WHERE P. Plan > 0,5 * F. Plan)
Запит способу а) виконується таким чином: для кожної філії виконується підлеглий запит, який відбирає з таблиці Pracivnyky рядки, для яких в стовпчику Filia міститься те саме значення, що і в стовпчику Kod_Filii біжучого рядка таблиці Filii (який перевіряється головним запитом) і для яких значення в стовпчику Plan перевищує половину значення стовпчика Plan біжучого рядка таблиці Filii.
Якщо таблиця результатів підлеглого запиту містить хоча би один рядок, то перевірка WHERE EXISTS (. . .) дасть TRUE; - і така філія ввійде в таблицю результатів головного запиту.
Якщо таблиця результатів підлеглого запиту – порожня (не містить жодного рядка, то перевірка WHERE EXISTS (. . .) дасть False - така філія не ввійде в таблицю результатів головного
Запит в способі б) виконується так: для кожної філії виконується підлеглий запит, який відбирає з таблиці Pracivnyky коди філій тих працівників, для яких значення в стовпчику Plan перевищує половину значення стовпчика Plan біжучого рядка таблиці Filii (який перевіряється головним запитом).
Якщо значення коду філії з біжучого рядка таблиці Filii входить у набір кодів філій, що повертається підлеглим запитом, то перевірка
WHERE . . . IN (. . .)
дасть TRUE - і така філія буде включена в таблицю результатів головного запиту.
Якщо ж значення коду філії з біжучого рядка таблиці Filii не входить у набір кодів філій, що повертається підлеглим запитом; або підлеглий запит взагалі не поверне жодного коду філії (тобто, створить порожню таблицю); або ж підлеглий запит створить таблицю, яка буде містити лише значення NULL – то перевірка
WHERE . . . IN (. . .)
дасть False (в перших двох випадках) або NULL (в останньому випадку) – і така філія не буде включена в таблицю результатів головного запиту.
В загальному випадку, запити
88).а). SELECT . . .