
Mysql查询-基础查询
基础查询
select 查询列表 from 表名;
例如:
1 | select * from test; |
查询单个字段
1 | select id,name from test; |
查询全部字段
方式一(查询字段顺序可以自定义):
1 | select id,name,age,sex from test; |
方式二(不够灵活):
select * from test; 查询常量值
1 | select 100; |
查询表达式
1 | select version( ); |
起别名
好处:
1. 便于理解
2. 如果要查询的字段有重名的情况,使用别名可以区分开来
方式一:
1 | select 100%50 as 结果; |
方式二:
1 | select last_name 姓,first_name 名 from test; |
注意:如果别名中出现了特殊字符,需要用双引号引起来
去重
关键字:distinct
案例:查询所有员工的部门编号
1 | select distinct department_id from employees; |
+ 号的作用(不能实现字段拼接)
+ 号的功能:运算符
实例:
- 两个数都为数值型,则做加法运算
1 | select 100 + 100; |
- 一个为字符型,一个为数值型,系统会尝试把字符型转换为数值型
成功则继续运算,失败则把字符型的值视为数字0
1 | select "100" + 100; |
拼接
在mysql中进行拼接,不能用 +号,需要用到concat函数
1 | concat ('a','b','c') as 结果; |
案例:显示所有员工的姓和名还有年龄,中间用-号进行连接
1 | select concat(last_name,'-',first_name,'-',age) |
但是如果age字段有为空(NULL)的情况,查询就会出现问题
可以使用IFNULL( )函数
那么,语句可以这样写:
1 | select concat(last_name,'-',first_name,'-',ifnull(age,0)) |