Связанные подзапросы.
Возможность подзапросов порождает возможность ссылки в подзапросе на таблицу, имя которой указано в FORM внешнего запроса. В этом случае подзапрос повторяется многократно по количеству строк таблицы основного запроса.
Пример. Отыскать всех покупателей, сделавших заказы 3 октября 2006 г.
|
FROM Customers outer
WHERE 10/03/06 IN
(SELECT odate
FROM Orders inner
|
Существует специальный оператор, всегда использующий подзапрос в качестве аргумента- это оператор EXISTS.
Он используется, когда от подзапроса нужно лишь узнать дает он NULL или нет. Соответственно EXISTS возвращает «ложь» или «истину».
Например, нужно извлечь данные из таблицы Customers в том случае, если хотя бы один покупатель из нее из London’а:
SELECT cnum, cname, city
FROM Customers
WHERE EXISTS (SELECT *
FROM Customers
WHERE city = ‘London’);
В результате можно получить:
Дата добавления: 2015-08-08; просмотров: 739;