MySQL_函数、排序、分组

版权声明:如果有不同看法,或者是文中写错的地方,麻烦各位花费几秒的时间,指出文中的错误。灰常感谢!!! https://blog.csdn.net/pseudonym_/article/details/77372912

1. 符号说明

符号 说明 作用说明
>、< 大于、小于 和数学大小于一样
!=、<> 不等于 两种都是不等于的写法
in(集合) 表示在这个范围内 约束条件,表示在这个集合当中
like 配合模糊查询 Like语句中,% 代表零个或多个任意字符,_ 代表一个字符。
is null 判断是否为null
and 并且 逻辑运算
or 或者 逻辑运算
not 逻辑运算

2. 排序
 排序所用的关键字是 order by,升序(asc)和降序(desc)。默认的排序是升序。
order by 出现的位置必须是select语句的结尾(最末尾)。

//XXX代表查询出来的记录。
XXX order by 字段1 asc/desc,字段2 asc/desc; 
根据字段1进行排序,如果两者一样,就根据字段2再排序,以此类推。

3. 聚集函数

函数 作用 说明
count() 获取数量 count(*)代表有多少条记录
sum() 求和,会忽略null 求()中参数的和
IFNULL(x,0) 如果x为null,那么x就等于0
avg() 求平均值
max() 求最大值
min() 求最小值


注意:
注意

4. 分组
group by XXX having 条件过滤;
 group by 可以将查询结果按照属性列或者属性列组合在行的方向上进行分组,每组在属性或属性列组合上具有相同的值。
 对于分组的结果,使用having来进行过滤,不能使用where来进行过滤。

注意:

having和where的区别?
    1.where是在分组钱进行条件过滤,having实在分组后进行条件过滤。
    2.使用where的地方都可以使用having替换,但是having可以使用分组函数,而where不可以用
于分组函数。

5. 小结

在不改变顺序的情况下,一般的查询语句的先后顺序为:
select ... from ... where ... group by... order by asc/desc;
阅读更多
换一批

没有更多推荐了,返回首页