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 让我们能够数出在表格中有多少笔资料被选出来。 (编辑:晋中站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|