SQL单表查询案例

表(emp)结构

(1)查询部门编号为10中所有经理,部门编号为20中所有销售员,还有即不是经理又不是销售员但其工资大或等于20000的所有员工详细资料。

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

(2)有奖金的工种。

SELECT DISTINCT job FROM emp WHERE comm IS NOT NULL;

(3)查询名字由三个字组成的员工。

SELECT * FROM emp WHERE ename LIKE '___';

(4)查询2000年入职的员工。

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

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

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

(6)查询每种工作的最高工资、最低工资、人数。

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

(7)查询工作名称以及从事同一工作雇员的月工资的总和,并且要满足从事同一工作的雇员的月工资合计大于50000,输出结果按月工资的合计升序排列。

SELECT job,SUM(sal) 
FROM emp 
GROUP BY job HAVING SUM(sal)>50000 
ORDER BY SUM(sal) ASC;
原文地址:https://www.cnblogs.com/fengmingyue/p/6028022.html