WHERE (Transact-SQL)

指定 SQL Server 2008 R2 中的 DELETE、MERGE、SELECT 或 UPDATE 语句返回的行的搜索条件。使用此子句可以限制该语句返回或影响的行数。

主题链接图标Transact-SQL 语法约定

语法

[ WHERE <search_condition> ]

参数

  • < search_condition >
    定义要返回的行应满足的条件。对搜索条件中可以包含的谓词数量没有限制。有关搜索条件和谓词的详细信息,请参阅搜索条件 (Transact-SQL)

示例

下面的示例演示如何在 WHERE 子句中使用某些常见的搜索条件。

A. 使用简单等式查找行

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

B. 查找包含作为字符串一部分的值的行

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

C. 使用比较运算符查找行

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

D. 查找满足三个条件当中的任何一个条件的行

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

E. 查找必须满足若干个条件的行

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

F. 查找位于值列表中的行

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

G. 查找含有两个值之间的一个值的行

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