查看模式
select @@global.sql_mode;
关键字的优先级
- from 来自
- where 条件
- group by 分组
- having 筛选
- select 查询
- distinct 去重
- order by 排序
- limit 限制条数
表单查询语法
select 字段,字段 from 表名 where 条件 group by 分组 having 筛选 order by 排序 limit 限制
where
- 比较运算 > < >= <= <> !=
- 值在 80-100 之间 包含 80 100
between 80 and 100;
- 值 是 80,90,100 的
in(80,90,100) 相反的 not in(80,90,100)
- 模糊查询
like '张%' % 通配符 包含一个或多个 // 查询姓张的人 like '程咬_' _ 包含一个字符
group by 分组
- 经过分组之后只能查看当前字段,如果想查看组内信息需要借助于聚合函数
- 聚合函数
max() 求最大值 min() 求最小值 avg() 求平均值 sum() 求和 count() 求总个数
- 拼接分组后的内容
group_concat(name)
having 筛选
- 用在 group by 之后
order by 排序
order by age ASC; 默认升序
order by age desc; 降序排列
limit
- 限制查询次数
limit 0, 5 ; 0 表示起始索引 5 表示显示条数
多表查询
- 交叉连接
select * from table_1,table_2; 生成笛卡尔积
- 内连接
只获取匹配的数据 select 表名.列名, 表名.列名 from 表1 inner join 表2 on 条件(表1.列 = 表2.列);
- 左连接
只显示左表所有的记录 select 表名.列名, 表名.列名 from 表1 left join 表2 on 条件(表1.列 = 表2.列);
- 右链接
只显示 右 表所有的记录 select 表名.列名, 表名.列名 from 表1 right join 表2 on 条件(表1.列 = 表2.列);
- 全外连接
左连接 union 右链接
子查询
in ; not in ; any ; all; exists; not exists;
原文地址:https://www.cnblogs.com/zhang-zi-yi/p/10749256.html
时间: 2024-10-20 13:05:02