| 
                         ASC - 按照顺序对记录进行排序。 
- -- Company在表Orders中为字母,则会以字母顺序显示公司名称 
 - SELECT Company, OrderNumber FROM Orders ORDER BY Company 
 - -- 后面跟上 DESC 则为降序显示 
 - SELECT Company, OrderNumber FROM Orders ORDER BY Company DESC 
 - -- Company以降序显示公司名称,并OrderNumber以顺序显示 
 - SELECT Company, OrderNumber FROM Orders ORDER BY Company DESC, OrderNumber ASC 
 
  
3、IN 
IN - 操作符允许我们在 WHERE 子句中规定多个值。 
IN - 操作符用来指定范围,范围中的每一条,都进行匹配。IN取值规律,由逗号分割,全部放置括号中。 语法:SELECT "字段名"FROM "表格名"WHERE "字段名" IN ('值一', '值二', ...); 
 
- -- 从表 Persons 选取 字段 LastName 等于 Adams、Carter 
 - SELECT * FROM Persons WHERE LastName IN ('Adams','Carter') 
 
  
4、NOT 
NOT - 操作符总是与其他操作符一起使用,用在要过滤的前面。 
 
- SELECT vend_id, prod_name FROM Products WHERE NOT vend_id = 'DLL01' ORDER BY prod_name; 
 
  
5、UNION 
UNION - 操作符用于合并两个或多个 SELECT 语句的结果集。 
 
- -- 列出所有在中国表(Employees_China)和美国(Employees_USA)的不同的雇员名 
 - SELECT E_Name FROM Employees_China UNION SELECT E_Name FROM Employees_USA 
 - -- 列出 meeting 表中的 pic_url, 
 - -- station 表中的 number_station 别名设置成 pic_url 避免字段不一样报错 
 - -- 按更新时间排序 
 - SELECT id,pic_url FROM meeting UNION ALL SELECT id,number_station AS pic_url FROM station ORDER BY update_at; 
 - -- 通过 UNION 语法同时查询了 products 表 和 comments 表的总记录数,并且按照 count 排序 
 - SELECT 'product' AS type, count(*) as count FROM `products` union select 'comment' as type, count(*) as count FROM `comments` order by count; 
 
  
6、AS 
as - 可理解为:用作、当成,作为;别名 
一般是重命名列名或者表名。 
语法:select column_1 as 列1,column_2 as 列2 from table as 表 
 
- SELECT * FROM Employee AS emp 
 - -- 这句意思是查找所有Employee 表里面的数据,并把Employee表格命名为 emp。 
 - -- 当你命名一个表之后,你可以在下面用 emp 代替 Employee. 
 - -- 例如 SELECT * FROM emp. 
 - SELECT MAX(OrderPrice) AS LargestOrderPrice FROM Orders 
 - -- 列出表 Orders 字段 OrderPrice 列最大值, 
 - -- 结果集列不显示 OrderPrice 显示 LargestOrderPrice 
 - -- 显示表 users_profile 中的 name 列 
 - SELECT t.name from (SELECT * from users_profile a) AS t; 
 - -- 表 user_accounts 命名别名 ua,表 users_profile 命名别名 up 
 - -- 满足条件 表 user_accounts 字段 id 等于 表 users_profile 字段 user_id 
 - -- 结果集只显示mobile、name两列 
 - SELECT ua.mobile,up.name FROM user_accounts as ua INNER JOIN users_profile as up ON ua.id = up.user_id; 
 
  
7、JOIN 
用于根据两个或多个表中的列之间的关系,从这些表中查询数据。 
 
    - JOIN: 如果表中有至少一个匹配,则返回行
 
    - INNER JOIN:在表中存在至少一个匹配时,INNER JOIN 关键字返回行。
 
    - LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行
 
    - RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行
 
    - FULL JOIN: 只要其中一个表中存在匹配,就返回行(MySQL 是不支持的,通过 LEFT JOIN + UNION + RIGHT JOIN 的方式 来实现)
 
 
- SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo 
 - FROM Persons 
 - INNER JOIN Orders 
 - ON Persons.Id_P = Orders.Id_P 
 - ORDER BY Persons.LastName; 
 
  
七、SQL 函数
1、COUNT 
COUNT 让我们能够数出在表格中有多少笔资料被选出来。                         (编辑:滁州站长网) 
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! 
                      |