1.排序查询
语法:
select
要查询的东西
from
表
where
条件
order by 排序的字段|表达式|函数|别名 【asc|desc】
- 排序方式:
- ASC:升序,默认的
- DESC:降序
*排序分类:
1.按单个字段进行排序
2.按多个字段排序
3.按表达式排序
4.按别名排序
5.按函数排序
- 注意:
- 如果有多个排序条件,则当之前的条件值一样时,才会判断第二条件
常见函数:
1.字符函数
concat:拼接
substr:截取子串
lower:转换成小写
upper:转换成大写
trim:去前后指定的空格和字符
ltrim:去左边空格
rtrim:去右边空格
replace:替换
lpad:左填充
rpad:右填充
instr:返回子串第一次出现的索引
length:获取字节个数
2.数学函数
round():四舍五入
rand:随机数
floor:向下取整
ceil:向上取整
mod:取余
truncate:截断
3.日期函数:
now:当前系统日期+时间
curdate:当前系统日期
curtime:当前系统时间
str_to_date:将字符转换成日期
date_format:将日期转换成字符
4.流程控制函数
if 处理双分支
case语句 处理多分支
情况1:处理等值判断
情况2:处理条件判断
5.其他函数
version: 版本
database: 当前库
user: 当前连接用户
4.分组函数
- 语法:
select 查询的字段,分组函数
from 表
group by 分组的字段 - 特点:
1、可以按单个字段分组
2、和分组函数一同查询的字段最好是分组后的字段
3、可以按多个字段分组,字段之间用逗号隔开
4、可以支持排序
5、having后可以支持别名 - 面试相关
- where 和 having 的区别?
- where 在分组之前进行限定,如果不满足条件,则不参与分组。having在分组之后进行限定,如果不 满足结果,则不会被查询出来
- where 后不可以跟聚合函数,having可以进行聚合函数的判断。
- where 和 having 的区别?