数据库小练习1:

1. 查询出部门编号为30的所有员工:

SELECT * FROM emp WHERE deptno=30;

2. 所有销售员的姓名、编号和部门编号。

SELECT ename,empno,mgr FROM emp;

3. 找出奖金高于工资的员工。

SELECT ename FROM emp WHERE comm > sal;

4. 找出奖金高于工资的60%的员工。

SELECT * FROM emp WHERE comm > sal*0.6;

5. 找出部门编号为10中所有经理,和部门编号为20中所有销售员的详细资料。

SELECT * FROM emp WHERE (deptno=10 AND job='经理') OR (deptno=20 AND job='销售员');

6. 找出部门编号为10中所有经理,部门编号为20中所有销售员,还有即不是经理又不是销售员但其工资大或等于20000的所有员工详细资料。

SELECT * FROM emp WHERE (deptno=10 AND job='经理') OR (deptno=20 AND job='销售员')
OR (job<>'经理''销售员' AND sal>=20000);

7. 无奖金或奖金低于1000的员工。

SELECT * FROM emp WHERE comm IS NULL OR comm<=1000;

8. 查询名字由三个字组成的员工。

 SELECT * FROM emp WHERE ename LIKE '___' ;

9.查询2000年入职的员工。

 SELECT * FROM emp WHERE hiredate LIKE '2000%';

10. 查询所有员工详细信息,用编号升序排序

 SELECT * FROM emp ORDER BY empno;

11. 查询所有员工详细信息,用工资降序排序,如果工资相同使用入职日期升序排序

 SELECT * FROM emp ORDER BY sal DESC,hiredate ASC;

12. 查询姓周的两个名字的员工。

 SELECT * FROM emp WHERE ename LIKE '周_';

13. 查询所有姓张的员工。

SELECT * FROM emp WHERE ename LIKE '张%';

14. 查询该公司有多少个岗位,每个岗位有多少人。

SELECT job,COUNT(*)FROM emp GROUP BY job;

15. 查询哪个岗位中人数大于3。

SELECT job FROM emp GROUP BY job HAVING COUNT(*)>3;

posted on   博塬  阅读(103)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!



点击右上角即可分享
微信分享提示