一、基础查询
语法:select 查询列表 form 表名;
特点:
1、查询列表可以是字段、常量值、函数、表达式;
2、查询到的结果是一个虚拟的表格;
# 查询表中的单个字段数据 select last_name from employees; # 查询表中的多个字段数据 select last_name,first_name from employees; # 查询表中的全部字段数据 select * from employees; # 查询常量值 select 100; # 查询表达式 select 100*98; # 查询函数 select database();
二、起别名
/* 起别名: 1、便于理解 2、如果要查询的字段有重名的情况,使用别名可以区分开来 注意:如果别名中间存在特殊符号( 、#等)需要在别名前后加上双引号进行 标识 */ # 进入名称为myemploees库(操作表数据前需要先进入表存在的对应库) use myemployees; # 方式一:使用AS select 100 AS 数字; select last_name AS 姓,first_name AS 名 from employees; # 方式二:使用空格 select last_name "姓 #氏",first_name 名 from employees;
三、去重
# 去重 select DISTINCT department_id from employees;
四、+号的作用
mysql中的+只有一个作用:运算符
select 90+100; 两个操作数都为数值型则进行加法运算,结果:190
select '90'+100; 两个操作数如果有一个是字符型,则会mysql会试图将字符串转换为 数值型, 如果转换成功则进行加法运算,结果:190
select '姓名'+90; 如果转换失败则将字符转换为0然后进行加法运算,结果:90
select null+90; 只要一方为null,则结果都会为null,结果:null
五、拼接concat()
如果没有给拼接后的字段取别名,那么列名会以concat(last_name, first_name)作为拼接后字段的列名。
# 拼接 select concat(last_name, first_name) AS '姓名' from employees;
六、IFNULL()
语法:IFNULL('指定列字段名', 填充值)
判断指定列字段值是否为空,如果为空则转换为“填充值"
# 显示出表employees的全部列,各个列之间用逗号连接,列头显示成OUT_PUT select concat(job_id,',',last_name,',', first_name,',', IFNULL(commission_pct, 0)) AS OUT_PUT from employees;