среда, 27 марта 2013 г.

Примеры использования IN, NOT IN в подзапросах

Для начинающих пользователей. Примеры использования предикатов IN, NOT IN. Как проверить содержится ли результат выражения в списке результатов подзапроса

-- Как проверить содержится ли результат выражения в списке результатов подзапроса
-- Примеры работы предиката IN

IF 'Red' IN
    (
         SELECT
             Color
         FROM AdventureWorks2012.Production.Product
    )
    SELECT 'Yes'
ELSE
    SELECT 'No'

IF 'Grey' IN
    (
         SELECT
             Color
         FROM AdventureWorks2012.Production.Product
    )
    SELECT 'Yes'
ELSE
    SELECT 'No'


IF 'ColorLess' IN
    (
         SELECT
             Color
         FROM AdventureWorks2012.Production.Product
    )
    SELECT 'Yes'
ELSE
    SELECT 'No'

-- Пример работы предиката NOT IN
IF 'ColorLess' NOT IN
    (
         SELECT
             ISNULL(Color,'')
         FROM AdventureWorks2012.Production.Product
    )
    SELECT 'Yes'
ELSE
    SELECT 'No'