SQL – WHERE 子句
SQL – WHERE 子句
SQL 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、姓名和薪水字段,其中薪水大于 2000 –
SQL> 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 表中获取名为Hardik的客户的 ID、Name 和 Salary 字段。
在这里,重要的是要注意所有的字符串都应该放在单引号 (”) 内。而在上面的例子中,数值应该不带任何引号。
SQL> SELECT ID, NAME, SALARY FROM CUSTOMERS WHERE NAME = 'Hardik';
这将产生以下结果 –
+----+----------+----------+ | ID | NAME | SALARY | +----+----------+----------+ | 5 | Hardik | 8500.00 | +----+----------+----------+