操作符
AND , OR , NOT
WHERE子句可以与AND, OR 和 NOT 操作符结合使用。
AND 和 OR操作符用于根据多个条件筛选记录
- AND操作符:由分隔的所有条件都为 TRUE,则显示记录
- OR操作符:如果由OR分隔的任何条件为 TRUE,则显示记录
- NOT操作符:如果条件不为TRUE,则显示剩下为 TRUE 的所有记录
举例
例1 AND
1 | SELECT * FROM Customers |
从 Customers
(客户)表中查询国家为 德国(Germany)且城市为 柏林(Berlin)的所有客户信息
例2 OR
1 | SELECT * FROM Customers |
从 Customers
(客户)表中查询城市为 柏林(Berlin)或 斯图加特(Stuttgart)的所有客户信息。
例3 NOT
1 | SELECT * FROM Customers |
从 Customers
(客户)表中查询国家不为 德国(Germany)的所有客户信息。
操作符结合使用
AND、OR 和 NOT 的结合
举例
例1:AND 和 OR
1 | SELECT * FROM Customers |
从 Customers
(客户)表中查询国家为 德国(Germany)且城市为 柏林(Berlin)或 斯图加特(Stuttgart)的所有客户信息。
使用括号来确保先判断城市条件,然后再与国家条件结合。
例2:NOT 和 AND
1 | SELECT * FROM Customers |
从 Customers
(客户)表中查询国家既不是 德国(Germany),也不是 美国(USA)的所有客户信息。
MySQL ORDER BY 关键字
ORDER BY
关键字用于按升序或降序对结果集进行排序。
默认情况下,ORDER BY
关键字按升序排序记录;要按降序排序记录,可以使用 DESC
关键字
语法:
1 | SELECT column1, column2, ... |
在SQL中,ASC 是升序的缩写,降序排序则使用 DESC。
例1:
1 | SELECT * FROM Customers |
从 Customers
(客户)表中查询所有字段,并按国家(Country)进行升序排序
例2:
1 | SELECT * FROM Customers |
从 Customers
(客户)表中查询所有字段,并按国家(Country)进行降序排序
例3:
1 | SELECT * FROM Customers |
从 Customers
(客户)表中查询所有字段,并首先按国家(Country)升序排序,然后在相同国家的记录中按客户名称(CustomerName)升序排序。
例4:
1 | SELECT * FROM Customers |
从 Customers
(客户)表中查询所有字段,并首先按国家(Country)升序排序,然后在相同国家的记录中按客户名称(CustomerName)降序排序