查出至少有一个员工的部门。显示部门编号、部门名称、部门位置、部门人数。
SELECT
d.*,
z.cou
FROM dept d,
(SELECT
depno,
COUNT(*) cou
FROM emp
GROUP BY depno) z
WHERE d.deptno = z.depno;
列出薪金比关羽高的所有员工。
列出所有员工的姓名及其直接上级的姓名。
SELECT
e.ename,
m.ename
FROM emp e
LEFT OUTER JOIN emp m
ON e.mgr = m.empno;
列出受雇日期早于直接上级的所有员工的编号、姓名、部门名称。
SELECT
e.empno,
e.ename,
d.dname
FROM emp e,
emp m,
dept d
WHERE e.mgr = m.empno
AND e.hiredate < m.hiredate
AND e.deptno = d.deptno;
列出部门名称和这些部门的员工信息,同时列出那些没有员工的部门。
SELECT *
FROM emp e
RIGHT OUTER JOIN dept d
ON d.deptno = e.deptno;
列出所有文员的姓名及其部门名称,部门的人数。
列出最低薪金大于15000的各种工作及从事此工作的员工人数。
SELECT
job,
COUNT(*)
FROM emp e
GROUP BY job MIN(sal) > 15000;
列出在销售部工作的员工的姓名,假定不知道销售部的部门编号。
SELECT *
FROM emp e
WHERE e.deptno = (SELECT
deptno
FROM dept
WHERE dname = '销售部');
列出薪金高于公司平均薪金的所有员工信息,所在部门名称,上级领导, 工资等级。
SELECT
e.*,
d.dname,
m.ename,
s.grade
FROM emp e
LEFT OUTER JOIN dept d
ON e.deptno = d.deptno
LEFT OUTER JOIN emp m
ON e.mgr = m.empno
LEFT OUTER JOIN salgrade s
ON e.sal BETWEEN s.losal
AND s.hisal
WHERE e.sal > (SELECT
AVG(sal)
FROM emp);
列出与庞统从事相同工作的所有员工及部门名称。
SELECT
e.*,
d.name
FROM emp e,
dept d
WHERE e.depno = d.deptno
AND job = (SELECT
job
FROM emp
WHERE ename = '庞统');
列出薪金高于在部门30工作的所有员工的薪金的员工姓名和薪金、部门名称。
SELECT
e.name,
e.sal,
d.dname
FROM emp e,
dept d
WHERE e.deptno = d.deptno
AND sal > ALL(SELECT
sal
FROM emp
WHERE deptno = 30);
列出每个部门的员工数量、平均工资。查出年份、利润、年度增长比
SELECT
y1.*,
CONCAT((y1.zz-y2.zz)/y2.zz*100,'%') 增长比
FROM years y1 LEFT OUTER JOIN
years y2
ON y1.yy=y2.yy+1;