数据库
Mysql数据库学习!
yum安装mysql数据库
数据库基础知识
数据库条件约束
数据库用户及权限操作-DCL
数据库基础查询操作-DQL
数据库以及表结构操作-DDL
数据库表记录操作-DML
Mysql数据库常用安全加固设置
Redis数据库学习!
Redis数据库安装
SQL server数据库学习
SQL server2019基础安装
Mysql_windows安装
mysql数据库基本概念简介
数据库DQL操作
DDL数据库操作
数据库DML语句
DCL数据控制语句
多表查询
函数
事务
mysql存储引擎
mysql索引
mysql约束
mysql语句优化
本文档使用 MrDoc 发布
-
+
首页
数据库DQL操作
# 数据库查询语句 常用关键字: - SELECT 字段列表 - FROM 表名列表 - WHERE 条件列表 - GROUP BY 分组字段列表 - HAVING 分组后条件列表 - ORDER BY 排序字段列表 - LIMIT 分页参数 ## 基本查询 ```sql # 查询多个字段 SELECT 字段1,字段2 ... FROM 表名; # 查询所有字段 SELECT * FROM 表名; # 设置别名 SELECT 字段1 AS 别名1,字段2 AS 别名2 FROM 表名; # 去除重复记录 SELECT DISTINCT 字段列表 FROM 表名; ``` ## 条件查询 ```sql # WHERE SELECT 字段列表 FROM 表名 WHERE 条件列表; # 条件包括大于,小于等于和逻辑运算符等 SELECT * FROM employee WHERE age >= 20; # 查询年龄大于等于20的员工 SELECT * FROM employee WHERE age >= 20 AND age <=27; # 查询年龄在20-27之间的员工 SELECT * FROM employee WHERE age BETWEEN 20 AND 27; # 查询年龄在20-27之间的员工 SELECT * FROM employee WHERE title IS NULL; # 查询title为空的记录 SELECT * FROM employee WHERE title IS NOT NULL; # 查询title不为空的记录 # 字符串查询条件,LIKE模糊查询,_代表一个字符,%代表任意字符 SELECT * FROM employee WHERE name LIKE '__'; # 查询name为两个字的员工 SELECT * FROM employee WHERE name like '吴%' # 查询姓吴的员工 ``` ## 聚合函数查询 将一列数据作为一个整体进行纵向计算 - COUNT,计数 - MAX,最大值 - MIN,最小值 - AVG,平均值 - SUM,求和 ```sql # 计数 SELECT COUNT(*) FROM employee; # 查询数据库表有多少条数据 SELECT COUNT(department) AS '部门数量' FROM employee; # 查询某个字段的计数 # 数值 SELECT MAX(wage) FROM employee; # 查询工资最大值 SELECT MIN(wage) FROM employee; # 查询工资最小值 SELECT AVG(wage) FROM employee; # 查询工资的平均值 SELECT SUM(wage) FROM employee; # 查询每月工资开销总额 ``` ## 分组查询GROUP BY ```sql # WHERE 满足条件才进行分组,having可以使用聚合函数,分组之后 # 执行顺序:WHERE>聚合函数>HAVING # 分组之后,查询的字段一般为聚合函数和分组字段,查询其他字段无任何意义 SELECT 字段列表 FROM 表名 [WHERE 条件] GROUP BY 分组字段名 [HAVING 分组后过滤条件]; SELECT gender,COUNT(*) FROM employee GROUP BY gender; # 统计不同性别员工的数量 SELECT name,gender,COUNT(*) FROM employee WHERE wage >=5000 GROUP BY gender; # 报错,因为name不是分组字段 SELECT gender,COUNT(*) FROM employee WHERE wage >=5000 GROUP BY gender HAVING COUNT(*) > 3; # 通过HAVING过滤分组后条件 ``` ## 排序查询 ORDER BY ```sql # 排序方式:1,ASC升序(默认值),2,DESC 降序 SELECT 字段列表 FROM 表名 ORDER BY 字段1 排序方式1,字段2,排序方式2...; SELECT * FROM employee ORDER BY age DESC; # 查询员工按照年龄降序排序 ``` ## 分页查询 ```sql # 起始索引从0开始,起始索引=(查询页码-1) * 每页显示记录数 # MYSQL独有LIMIT # 如查询的是第一页数据,可以省略,简写LIMIT 10 SELECT 字段列表 FROM 表名 LIMIT 起始索引,查询记录数; SELECT * FROM employee limit 10; # 查询第一页数据,每页记录10 SELECT * FROM employee limit 10,10; # 查询第二页数据,每页数据0,(2-1)*10=10 ```
Chuck
2023年6月21日 09:53
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码