mysql---基础(2)DML/DQL/DCL

目录

1、基础2-DML

1.1、添加数据---insert

1.2、修改数据---update

 1.3、删除数据---delete

 2、基础3 DQL-数据查询语言-关键字select

 2.1、基础查询

 2.2、条件查询

2.3 聚合函数--作用于某一列

2.4、分组查询

 2.5、排序查询 ---order by

2.6、分页查询--Limit  

2.7、综合案例

2.8、执行顺序

 3、基础4-DCL-数据控制

 3.1、用户控制

  3.2、权限控制​编辑


1、基础2-DML

1.1、添加数据---insert

 

  • 给指定的字段添加数据 

insert into user(id, name, money) VALUES (1,'wxx','3130.2');

  • 给全部字段添加数据    

insert into user values (3,'rrrr','fqawg');

  • 批量添加

insert into user values (4,'wwww','fqawg'),(5,'gddd','sgsag');

1.2、修改数据---update

 1.3、删除数据---delete

 

 2、基础3 DQL-数据查询语言-关键字select

 2.1、基础查询

-- 基础查询
-- 1.查询指定字段 name workno age
select name,workno,age from emp;
-- 2.查询返回所有字段数据
select * from emp;
-- 3. 查询所有员工的工作地址,起别名
select workaddress as '工作地址' from emp;
select workaddress  '工作地址' from emp;
-- 4. 查询上班地址  不要重复
select distinct workaddress  '工作地址' from emp;

 2.2、条件查询

-- 条件查询
-- 1. 查询年龄等于22 的员工
select * from emp where age=22;
-- 2. 查询年龄小于 23 的员工
select * from emp where age<23;
-- 3. 查询年龄小于等于23 的员工
select * from emp where age<23;
-- 4. 查询没有身份证号的员工
select * from emp where idcard is null;
-- 5. 查询有身份证 的员工信息
select * from emp where idcard is Not null;
-- 6. 查询年龄不等于22 的员工共信息
select * from emp where age != 22;
select * from emp where age <> 22;
-- 7.查询年龄在22-24 之间的员工信息
select * from emp where age >= 22 && age <= 24;
select * from emp where age >= 22 AND age <= 24;
select * from emp where age between 15 AND 20;
-- 8. 查询性别为女 且年龄小于25的员工信息
select * from emp where gender='女' and age <= 25;
-- 9. 查询年龄等于 21 23 或者25 的员工信息
select * from emp where age =21 or age=23 or age=25;
select * from emp where age in (21,23,25);
-- 10. 查询姓名为两个字的员工信息
select * from emp where name like '__' ;
-- 11. 查询身份证最后一位是3的员工信息
select * from emp where idcard like '%3';
select * from emp where idcard like '_________________3';

2.3 聚合函数--作用于某一列

-- 聚合函数
-- 1.统计该企业员工的数量
select COUNT(*) from emp;
select COUNT(id) from emp;
-- 2.统计该企业员工的平局年龄
select avg(age) from emp;
-- 3.统计该企业员工的最大年龄
select max(age) from emp;
-- 4.统计该企业员工的最小年龄
select min(age) from emp;
-- 5. 统计北京3地区的年龄之和
select sum(age) from emp where workaddress='北京3';

2.4、分组查询

 

-- 分组查询
-- 1. 根据分组查询 统计 女性员工 和 男性员工的 数量
select gender, COUNT(gender) from emp group by gender;
-- 2. 根据性别分组 统计男性员工和女性员工的平局年龄
select gender, avg(age) as '平均年龄' from emp group by gender;
-- 3. 查询年龄小于26的员工 根据工作地址进行分组 获取员工数大于2的工作地址
select workaddress,count(*) from emp where age<26 group by workaddress having count(*)>2;

 2.5、排序查询 ---order by

5、排序查询 ---order by

-- 排序查询
-- 1. 根据年龄对公司员工进行升序排序
select * from emp order by age asc ;
select * from emp order by age desc ;
-- 2. 根据年龄对公司进行升序排序 年龄相同 按照入职时间 进行降序排序
select * from emp order by age asc,entrydate desc ;

2.6、分页查询--Limit  

-- 分页查询
-- 1. 查询第一页的员工数据 每一页显示2条
select * from emp limit 0,2;

-- 1. 查询第一页的员工数据 每一页显示2条
select * from emp limit 2,2;

2.7、综合案例

-- 案例
-- 1.查询年龄为20,21,22,23 的员工信息
select * from emp where age in(20,21,22,23);
-- 2.查询性别为男 年龄在20-40(含)岁以内的 姓名为3个字的员工
select * from emp where gender='男' and age>=20 and age <=40 and name like '___';
select * from emp where gender='男' and age between 20 and 40 and name like '___';
-- 3.统计员工表中年龄小于60虽 的男性和女性员工的人数
select gender,count(*) from emp where age<60 group by gender;
-- 4. 查询所有年龄小于35岁的员工的姓名和年龄 ,并对结果按照年龄进行升序排序,若果年龄相同只按照入职时间降序排序
select name,age from emp where age<35 order by age asc ,entrydate desc ;
-- 5. 查询性别为男,且年龄在20-40(含)的前5个员工信息 并对结果按照年龄进行升序排序,若果年龄相同只按照入职时间升排序
select * from emp where gender='男' and age>=20 and age <=40 order by age,entrydate limit 0,5;

2.8、执行顺序

 

 3、基础4-DCL-数据控制

---有哪些用户可以访问

---每个用户有那些访问权限

 3.1、用户控制

-- 创建用户itcast ,只能在当前主机访问localhost 密码为123456
create user 'ircast'@'localhost' identified by '123456';

-- 创建用户 heima 可以在任意主机访问该数据库 密码为123456
create user 'heima'@'%' identified by '123456';

-- 修改用户的密码
alter user 'heima'@'%' identified with mysql_native_password by '1234';

-- 输出用户
drop user 'ircast'@'localhost';

  3.2、权限控制

-- 查询权限
show grants for 'heima'@'%';
-- 授予权限
grant all on wxx_test.* to 'heima'@'%';
-- 撤销权限
revoke all on wxx_test.* from 'heima'@'%';
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值