1. 单表

1.1 查找部门30中员工的详细信息。

SELECT * FROM emp WHERE deptno = 30;

1.2 找出从事clerk工作的员工的编号、姓名、部门号。

SELECT empno, ename, deptno FROM emp WHERE job = 'clerk';

1.3 检索出奖金多于基本工资的员工信息。

SELECT * FROM emp WHERE comm > sal;

1.4 检索出奖金多于基本工资60%的员工信息。

SELECT * FROM emp WHERE comm > sal * 0.6;

1.5 找出获得奖金的员工的工作。

SELECT DISTINCT job FROM emp WHERE comm IS NOT NULL;

1.6 找出奖金少于100或者没有获得奖金的员工的信息。

SELECT * FROM emp WHERE comm < 100 OR comm IS NULL;

1.7 找出姓名以a、b、s开始的员工信息。

SELECT * FROM emp WHERE ename LIKE 'a%' OR ename LIKE 'b%' OR ename LIKE 's%';

1.8 找到名字长度为6个字符的员工信息。

SELECT * FROM emp WHERE LENGTH(ename) = 6;

1.9 名字中不包含r字符的员工信息。

SELECT * FROM emp WHERE ename NOT LIKE '%r%';

1.10 返回员工的详细信息并按姓名排序。

SELECT * FROM emp ORDER BY ename;

1.11 返回员工的信息并按工作降序工资升序排列。

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

1.12 找出姓名中包含a的员工信息。

SELECT * FROM emp WHERE ename LIKE '%a%';
  1. 多表

2.1 返回员工姓名和该员工领导的姓名。

SELECT e.ename, m.ename AS manager_name
FROM emp e LEFT JOIN emp m ON e.mgr = m.empno;

2.2 返回员工姓名及其所在的部门名称。

SELECT e.ename, d.dname
FROM emp e JOIN dept d ON e.deptno = d.deptno;

2.3 返回从事clerk工作的员工姓名和所在部门名称。

SELECT e.ename, d.dname
FROM emp e JOIN dept d ON e.deptno = d.deptno
WHERE e.job = 'clerk';

2.4 返回销售部(sales)所有员工的姓名。

SELECT e.ename
FROM emp e JOIN dept d ON e.deptno = d.deptno
WHERE d.dname = '销售部';

2.5 返回部门号、部门名、部门所在位置及其每个部门的员工总数。

SELECT d.deptno, d.dname, d.loc, COUNT(e.empno) AS emp_count
FROM dept d LEFT JOIN emp e ON d.deptno = e.deptno
GROUP BY d.deptno, d.dname, d.loc;

2.6 返回员工的姓名、所在部门名及其工资。

SELECT e.ename, d.dname, e.sal
FROM emp e JOIN dept d ON e.deptno = d.deptno;

2.7 返回员工的详细信息。(包括部门名)

SELECT e.*, d.dname
FROM emp e JOIN dept d ON e.deptno = d.deptno;

2.8 返回员工工作及其从事此工作的最低工资。

SELECT job, MIN(sal) AS min_sal
FROM emp
GROUP BY job;

2.9 计算出员工的年薪,并且以年薪排序。

SELECT ename, sal * 12 + COALESCE(comm, 0) AS annual_salary
FROM emp
ORDER BY annual_salary DESC;

2.10 返回工资处于第四级别的员工的姓名。

SELECT ename
FROM emp
WHERE sal BETWEEN (SELECT losal FROM salgrade WHERE grade = 4) AND (SELECT hisal FROM salgrade WHERE grade = 4);
``
题目一根据sql语句创建如下表完成相关sql语句的编写1 ##部门表2 CREATE TABLE dept3 deptno INT PRIMARY KEY##部门编号4 dname VARCHAR14 ##部门名称5 loc VARCHAR13 ##部门地址6 ;7 #部门表数据8 INSERT INTO dept VALUES 10财务部北京20市场部上海30销售部广州40运营部深圳;910

原文地址: https://www.cveoy.top/t/topic/fYCo 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录