免费学习推荐:mysql视频教程
目录
- 一、基础查询
- 二、条件查询
- 三、排序查询
- 四、常见函数
- 五、分组查询
- 六、连接查询
- 七、子查询
- 八、分页查询
- 九、联合查询
样本数据准备
进行DQL查询语句实验前,首先准备对应的数据,作为样本以供查询使用
使用SQLyog中导入该SQL脚本,可以看到准备好的样本表:
该样本是某跨国企业员工管理的4张表,下图对每张表的各个字段做了介绍:
一、基础查询
语法:select 查询列表 from 表名;
特点:
查询列表可以是:表中的字段、常量值、表达式、函数。
查询的结果是一个虚拟的表格。
执行顺序:from > select (先找到表,再开始查询)
注意:`是着重号,当某张表中的字段与关键字冲突时,可以在该字段两边加上着重号,以标明其是一个字段,而不是关键字(如`name`)。
【基础查询】# 选中样本库USER myemployees;# 1.查询表中的单个字段SELECT last_name FROM employees;# 2.查询表中的多个字段SELECT last_name,salary,email FROM employees;# 3.查询表中所有的字段SELECT * FROM employees;# 4. 查询常量值SELECT 'Tom';# 5.查询表达式SELECT 7%6;# 6. 查询函数SELECT VERSION();# 7.起别名(mysql中建议将起别名使用双引号引起来"别名")/* 优点:便于理解;连接查询时,如果要查询的字段有重名情况,可以使用起别名来区分 */# 方式一,使用asSELECT 7%6 AS 结果;SELECT last_name AS 姓,first_name AS 名 FROM employees;# 方式二,使用空格SELECT 7%6 结果;SELECT last_name 姓,first_name 名 FROM employees;# 查询员工号为176的员工的姓名、部门、nianxinSELECT last_name,department_id,salary*12*(1+IFNULL(commission_pct,0)) AS 年薪 FROM employees; # 8.去重SELECT DISTINCT department_id FROM employees;# 9.+号的作用/* select 13+21; 两个操作数都是数值型,自动做加法运算 其中一个为字符型,则将字符型转换为数值型 select '13'+1; 转换成功,做加法运算 select 'hello'+1; 转换失败,将字符型转换为0 select null+10; 只要其中一方为null,结果就为null 补充ifnull函数:SELECT IFNULL(commission_pct,0) AS 奖金率,commission_pct FROM employees; mysql中用来拼接的不是+号,而是concat函数 */SELECT CONCAT(last_name,first_name) AS "姓名" FROM employees;
基础查询总结 | 说明 |
---|---|
1.查询表中的单个字段 | select 字段1 from 表; |
2.查询表中的多个字段 | select 字段1,字段2,...字段n from 表; |
3.查询表中的所有字段 | select * from 表; |
4.查询常量值 | select '常量值;' |
5.查询表达式 | select 数值1 表达式 数值2; |
6.查询函数 | select f(); |
7.起别名 | as |
本文来源[email protected]搞@^&代*@码2网8.去重 | distinct |
9.拼接使用concat函数,而不是"+" | concat(last_name,first_name) |