Базы данных Visual Foxpro

         

Оператор EXISTS

Оператор EXISTS принимает значение True (Истина), если результат выполнения подзапроса является непустым множеством. Если порожденное подзапросом множество пусто, то EXISTS принимает значение False (Ложь). Оператор NOT EXISTS работает в точности наоборот. Он истинен, если результат подзапроса пуст, и ложен в противном случае.



Замечание

Операторы EXISTS и NOT EXISTS всегда помещаются перед подзапросом.

В качестве примера выберем наименования товаров, которые заказали покупатели из Новгорода:

SELECT cNmGoods ;

FROM Goods ;

WHERE EXISTS ;

(SELECT * ;

FROM Customer, Ordsalem, Ordsaled ;

WHERE Ordsalem.icdOrder=Ordsaled.icdOrder ;

AND Ordsalem.iCdCustomer = Customer.iCdCustomer ;

AND Ordsaled.iCdGoods = Goods.iCdGoods ;

AND Customer.cCity = 'Новгород')

 

Содержание раздела