mysql笔记整理2---数据表查询(重点)
-
普通查询
select * from 表名; -- 查询全部字段的记录 select field as 别名 from 表名; -- 给字段起别名,也可以给表名起别名 select 表名.field from 表名; -- 可以通过表名.字段的方式查看字段的记录 -
条件查询
where后面支持多种运算符:比较运算符、逻辑运算符、模糊查询、范围查询、空判断。
-- 比较:< > = != -- 逻辑:and or not -- 模糊 -- like:%-替代0、1或多个,_替代一个 -- rlike:正则匹配查找,匹配的是varchar类型的字节即 -- 范围 -- in / not in -- between and / not between and -- 判断 -- is null -- is not null -- 优先级 -- 优先级由高到低的顺序为:小括号,not,比较运算符,逻辑运算符 -- and比or先运算,如果同时出现并希望先算or,需要结合()使用优先级由高到低的顺序为:小括号,not,比较运算符,逻辑运算符
and比or先运算,如果同时出现并希望先算or,需要结合()使用
-
排序
-- order by 字段 asc/desc[, 字段 asc/desc] -- asc 从小到大排列,升序 -- desc 从大到小排列,降序 -
聚合函数
count, sum, max, min, avg, round -
分组
group by 用于单个字段分组,也可用于多个字段分组,按照指定的字段进行分组。
group_concat()/聚合函数可以与group by 组合使用。
having 条件表达式:用来分组查询后指定一些条件来输出查询结果
说明:group by后面只能使用having条件语句。
-
分页
-- start 指的是起始位置数据的下标。 select * from 表名 limit start, count -
链接查询
内连接查询:查询的结果为两个表匹配到的数据
左连接查询:查询的结果为两个表匹配到的数据,左表特有的数据,对于右表中不存在的数据使用null填充
右连接查询:查询的结果为两个表匹配到的数据,右表特有的数据,对于左表中不存在的数据使用null填充
语法:select * from 表1 inner或left或right join 表2 on 表1.列 = 表2.列
- 子查询
在一个 select 语句中,嵌入了另外一个 select 语句, 那么被嵌入的 select 语句称之为子查询语句
查询的结果可以作为另一个查询的条件

浙公网安备 33010602011771号