– 查询所有语句–查看所有列和行
select
*from
表名
– 查询指定列
select
列名,…, from
表名
– 别名 as
关键字
列名 as 别名
– 筛选 where
– 当列表为1的列替换为男,否则为女
case
stu_sex when
1 then
‘男’ else
‘女’ end
as 性别
– between 条件1 and 条件2
– mysql方言函数if(),如果为真,男,否则女
if(stu_sex, ‘男’, ‘女’) as 性别
模糊查询
-- 通配符(wildcard)---> % ---> 匹配零个或任意多个字符
-- 通配符(wildcard)---> _ ---> 精确匹配一个字符
判断是否为空
is null / is not null
去重
distinct
排序*
– 升序(从小到大)—> ascending
order by asc
– 降序
order by desc
函数
-- curdate ---> 获取当前日期
-- datediff ---> 计算时间差(以天为单位)
-- floor / ceil ---> 向下/上取整
-- ifnull ---> 如果遇到null(空值),将其替换为指定的值
--max--最大值
--min--最小值
avg--平均值
分组
group by
注意-- 分组以前的数据筛选使用where子句,分组以后的数据筛选使用having子句
分页查询
-- 左外连接:确保左表(现在join前面的表)中的所有记录都能查出来,不满足连接条件的补充null
-- 右外连接:确保右表(现在join后面的表)中的所有记录都能查出来,不满足连接条件的补充null。
-- 全外连接:确保左表和右表中的所有记录都能查出来,不满足连接条件的补充null。