ви можете вкладати будь-яку кількість підзапитів у вбудованому поданні. Підзапит у реченні WHERE оператора SELECT також називається вкладеним підзапитом. Ви можете гніздитися до 255 рівнів підзапитів у вкладеному підзапиті. Підзапит може містити інший підзапит.
Підзапит може бути вкладений у речення WHERE або HAVING зовнішнього оператора SELECT, INSERT, UPDATE чи DELETE або в інший підзапит. До 32 рівнів вкладеності можливо, хоча обмеження залежить від доступної пам’яті та складності інших виразів у запиті.
1000 значень. В Oracle ми можемо ввести лише до 1000 значення в речення IN.
Є три широкі типи підзапиту в SQL. Цей розділ із OCA Oracle Database 11g: Посібник з іспиту з основ SQL I пояснює відмінності між однорядковим підзапитом, багаторядковим підзапитом і корельованим підзапитом.
Однорядковий підзапит Oracle
- Підзапит повинен повертати один рядок; підзапит, написаний без пропозиції Oracle WHERE (тому зазвичай повертає більше одного рядка), спричинить помилку.
- Підзапит повинен повертати один стовпець; вказівка більше одного стовпця в реченні SELECT підзапиту призведе до помилки.
255 рівнів Ви можете вкладатися до 255 рівнів підзапитів у вкладеному підзапиті. Підзапит може містити інший підзапит. Oracle Database не накладає обмежень на кількість рівнів підзапиту в пункті FROM запиту верхнього рівня.