MySQL从头至尾汇总(5.执行篇)

本文介绍了MySQL中ORDER BY和GROUP BY语句的使用方法,包括按列排序、分组统计等功能,以及如何结合WHERE子句进行数据筛选。

这一节讲解MySQL的基本执行篇,按列排序,分组等等

ORDER BY 排序

语法:
ORDER BY 字段

通过指定的字段进行排序,返回搜索结果。

SELECT 语句使用 ORDER BY 子句将查询数据排序后再返回数据:
SELECT field1, field2,...fieldN table_name1, table_name2...
ORDER BY field1, [field2...] [ASC [DESC]]

可以以多个字段作为排序条件进行排序后,返回搜索结果

ASC 查询结果以升序排列
DESC 查询结果以降序排列。
默认情况下,按升序排列。

也可以添加 WHERE…LIKE 子句来设置条件,去除不需要的数据

例:

按升序及降序排列。

li

加入 where like子句设置条件
li
li

注:

WHERE LIKE等子句要放在order by的前面,理解时可以类比order by为管道

字符排序是按常规字符比较utf8中对应数值的大小

UNION 操作符

当需要连接两个或俩个以上的 SELECT 语句的结果 ,并组合到一个集合中时,采用。

语法:

SELECT expression1, expression2, ... expression_n
FROM tables
[WHERE conditions]
UNION [ALL | DISTINCT]
SELECT expression1, expression2, ... expression_n
FROM tables
[WHERE conditions];

DISTINCT: 可选参数,不显示结果集中重复的数据。
默认情况下 为 DISTINCT。
ALL: 可选,返回所有结果集,包含重复数据。

例:

默认 distinct参数
li
all参数
例

GROUP BY 语句

通过某一条件对一个或多个列进行分组(将相同的合并为一个组)时采用。
语法:

SELECT column_name, function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name;

在分组的列上可以使用 COUNT, SUM, AVG等MySQL函数。
也可以使用WHERE来筛选指定匹配项

例:

使用 GROUP BY 语句 将数据表按insert_priv(的 Y 与 N)进行分组,并统计每个选项有多少条记录:

 SELECT insert_priv , count(*) from db group by insert_priv;

例子

分组(GROUP BY)后接的项,与查询项一定要一致
相当于从管道里进行分组,然后经过count()函数运算,得出结果。

下一篇,函数篇

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值