Поделиться через


Предложение WHERE (Transact-SQL)

Указывает условие поиска для строк, возвращаемых инструкцией DELETE, MERGE, SELECT или UPDATE в SQL Server 2008 R2. Это предложение используется для ограничения числа строк, возвращаемых или обрабатываемых инструкцией.

Значок ссылки на разделСинтаксические обозначения Transact-SQL

Синтаксис

[ WHERE <search_condition> ]

Аргументы

  • < search_condition >
    Определяет условия, которые должны быть выполнены для всех возвращаемых строк. Количество предикатов, которое может содержать условие поиска, неограниченно. Дополнительные сведения об условиях поиска и предикатах см. в разделе Условие поиска (Transact-SQL).

Примеры

В следующих примерах показывается, как можно использовать в предложении WHERE различные распространенные условия поиска.

А. Нахождение строки с помощью простого равенства

USE AdventureWorks2008R2;
GO
SELECT ProductID, Name
FROM Production.Product
WHERE Name = 'Blade' ;
GO

Б. Нахождение строк, содержащих значение как часть строки

SELECT ProductID, Name, Color
FROM Production.Product
WHERE Name LIKE ('%Frame%');
GO

В. Нахождение строк с использованием оператора сравнения

SELECT ProductID, Name
FROM Production.Product
WHERE ProductID <= 12 ;
GO

Г. Нахождение строк, удовлетворяющих любому из трех условий

SELECT ProductID, Name
FROM Production.Product
WHERE ProductID = 2
OR ProductID = 4 
OR Name = 'Spokes' ;
GO

Д. Нахождение строк, которые должны удовлетворять нескольким условиям

SELECT ProductID, Name, Color
FROM Production.Product
WHERE Name LIKE ('%Frame%')
AND Name LIKE ('HL%')
AND Color = 'Red' ;
GO

Е. Нахождение строк, находящихся в списке значений

SELECT ProductID, Name, Color
FROM Production.Product
WHERE Name IN ('Blade', 'Crown Race', 'Spokes');
GO

Ж. Нахождение строк, содержащих значение, расположенное между двумя значениями

SELECT ProductID, Name, Color
FROM Production.Product
WHERE ProductID BETWEEN 725 AND 734;
GO