T-SQL - WHERE 子句



MS SQL Server 的WHERE 子句用于在从单个表提取数据或与多个表连接时指定条件。

只有在满足给定条件的情况下,它才会从表中返回特定值。您必须使用 WHERE 子句来过滤记录并仅提取必要的记录。

WHERE 子句不仅用于 SELECT 语句,还用于 UPDATE、DELETE 语句等,我们将在后续章节中进行研究。

语法

以下是带有 WHERE 子句的 SELECT 语句的基本语法:

SELECT column1, column2, columnN  
FROM table_name 
WHERE [condition]

您可以使用比较运算符或逻辑运算符(如 >、<、=、LIKE、NOT 等)来指定条件。下面的例子将使这个概念更清晰。

示例

考虑 CUSTOMERS 表,其中包含以下记录:

ID  NAME       AGE       ADDRESS            SALARY 
1   Ramesh     32        Ahmedabad          2000.00 
2   Khilan     25        Delhi              1500.00 
3   kaushik    23        Kota               2000.00 
4   Chaitali   25        Mumbai             6500.00 
5   Hardik     27        Bhopal             8500.00 
6   Komal      22        MP                 4500.00 
7   Muffy      24        Indore             10000.00 

以下命令是一个示例,它将从 CUSTOMERS 表中提取 ID、Name 和 Salary 字段,其中薪水大于 2000。

SELECT ID, NAME, SALARY  
FROM CUSTOMERS 
WHERE SALARY > 2000;

上述命令将产生以下输出。

ID  NAME       SALARY 
4   Chaitali   6500.00 
5   Hardik     8500.00 
6   Komal      4500.00 
7   Muffy      10000.00

以下命令是一个示例,它将从 CUSTOMERS 表中提取 ID、Name 和 Salary 字段,用于名为“Hardik”的客户。需要注意的是,所有字符串都应该用单引号 ( '') 括起来,而数值应该像上面的例子一样不加引号:

SELECT ID, NAME, SALARY  
FROM CUSTOMERS 
WHERE NAME = 'Hardik';

上述命令将产生以下输出。

ID  NAME     SALARY 
5   Hardik   8500.00 
广告