* 代表查询所有字段,影响效率,开发中不推荐使用
设置别名语法 SELECT 字段1 [ AS 别名1 ] , 字段2 [ AS 别名2 ] … FROM 表名;
简写形式 SELECT 字段1 [ 别名1 ] , 字段2 [ 别名2 ] … FROM 表名;
例
SELECT name AS ename,workno no,age FROM emp;
去除重复记录语法 SELECT DISTINCT 字段列表 FROM 表名;
例
select distinct workaddress ‘工作地址’,dep_id from emp;
注:distinct是对当前记录去重,当distinct后面跟多个字段时,去重条件为这几个字段的值
条件拆查询
语法
SELECT 字段列表 FROM 表名 WHERE 条件列表 。
比如
查询年龄等于50的员工
select*from emp where age = 50;
查询年龄小于20的员工信息
select*from emp where age = >20;
查询年龄小于等于30的员工信息
select*from emp where age <=20;
查询没有身份证号的员工信息
select*from emp where idcard is null;
查询有身份证好的员工信息
select*from emp where idcard is not null;
下面就是聚合函数
语法
SELECT聚合函数(字段列表)FROM表名;
常见的聚合函数有以下几种
案例统计该企业员工数量
select count) from emp;一 统计的是总记录数
select count(idcard) from emp;- 统计的是idcard字段不为null的记录数
#对于count聚合函数,统计符合条件的总记录数,还可以通过count(数字(学符串)的开形式进行统计查询,比如:
select count(1) from empi
1对于counto、count(字段)、count(1) 的具体原理,我们在进阶篇中SQL优化部分会洋细讲解,此处大家只需要知道如何使用即可。
#统计该企业员工的平均年龄select avg(age) from emp:
统计该企业员工的最大年龄;
select(age)from emp;
统计该企业员工的最小员工年龄
select MIN(age) from emp ;
统计广西地区员工的年龄之和;
select sum(age) from emp where workaddress ='广西'
语法
案例根据性别分组,统计男性员工和女性员工的数量
select gender, count(*) from emp group by gender
根据性别分组,统计男性员工 和女性员工的平均年龄
select gender, avg(age) from emp group by gender
查询年龄小于45的员工,并根据工作地址分组,获取员工数量大于等于3的工作
地址
select workaddress, count(*) address count from emp where age – 45 group by
workaddress having address_count >=3
统计各个工作地址上班的男性及女性员工的数量
select workaddress, gender, count(") '教量'from emp group by workaddress.gender
排序查询
语法
SELECT 字段列表 FROM 表名 ORDER BY 字段1 排序方式1, 字段2排序案例
根据年龄对公司的员工进行升序排序
select * from emp order by age ags;
select * from emp order by age;
D C L
数据控制语言,用来管理数据库用户,控制数据库的访问权限。
管理用户
查询用户
select * from mysql user
图片
创建用户
CREATE USER '用户名@'主机名’IDENTIFIED BY“密码
修改用户密码
ALTER USER“用户名’@“主机名’IDENTIFIED WITH mysql_native password BY‘新密码’;
删除用户
DROP USER‘用户名@'主机名
案例
创建用户itcast, 只能够在当前主机localhost访问,密码123456
create user "itcast @localhost' identiied by ‘123456
创建用户heima, 可以在任意主机访问该数据库, 密码123456;
create user itcast'@localhost' identified by "1234.56"1修改用户heima的访问密码为1234;
alter user heima@'%' identified with mysgl native password by '1234"
删除 itcast@localhost 用户
drop user itcast @localhost"
查询权限
SHOW GRANTS FOR '用户名'@'主机名
授子权限
GRANT 权限列表 ON 数据库名 表名 TO “用户名'@主机名”
撤销权限
REVOKE 权限列表 ON 数据库名 表名 FROM'用户名"@主机名
案例
查询 ‘heima’@‘%’ 用户的权限
show grants for heima'@'%:
授予 “heima'@“%”用itcast数据库所有表的所有操作权限grant all on itcast* to heima'@%'
撒销 ‘heima"@‘%’ 用户的itcast数据库的所有权限
revoke all on itcast* from heima@%