-sql语法-2-部门表
生活随笔
收集整理的這篇文章主要介紹了
-sql语法-2-部门表
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
部門表
dept部門表(deptno部門編號/dname部門名稱/loc地點(diǎn)) create table dept (deptno numeric(2),dname varchar(14),loc varchar(13) );insert into dept values (10, 'ACCOUNTING', 'NEW YORK'); insert into dept values (20, 'RESEARCH', 'DALLAS'); insert into dept values (30, 'SALES', 'CHICAGO'); insert into dept values (40, 'OPERATIONS', 'BOSTON');工資等級表
salgrade工資等級表(grade 等級/losal此等級的最低/hisal此等級的最高) create table salgrade (grade numeric,losal numeric,hisal numeric );insert into salgrade values (1, 700, 1200); insert into salgrade values (2, 1201, 1400); insert into salgrade values (3, 1401, 2000); insert into salgrade values (4, 2001, 3000); insert into salgrade values (5, 3001, 9999);員工表
emp員工表(empno員工號/ename員工姓名/job工作/mgr上級編號/hiredate受雇日期/sal薪金/comm傭金/deptno部門編號) 工資 = 薪金 + 傭金
1.表自己跟自己連接
selsect
1查詢出部門編號為30的所有員工的編號和姓名
select deptno,empno,ename from emp where deptno=30 group by deptno,empno,ename2.找出部門編號為10中所有經(jīng)理,和部門編號為20中所有銷售員的詳細(xì)資料
select * from emp where deptno=10 and job='manager' union all select * from emp where deptno=20 and job='salesman'3.查詢所有員工詳細(xì)信息,用工資降序排序,如果工資相同使用入職日期升序排序
select empno,ename,job,mgr,hiredate,sal,comm,deptno, (sal+ifnull(comm,0)) as sal from emp order by sal desc,hiredate asc;4.列出最低薪金大于1500的各種工作及從事此工作的員工人數(shù)。
select job, sum(sal)as sal, count(ename)as pcount from emp group by job having sum(sal)>15005.列出在銷售部工作的員工的姓名,假定不知道銷售部的部門編號。
select job,deptno from emp where job='salesman'6.查詢姓名以S開頭的\以S結(jié)尾\包含S字符\第二個(gè)字母為L
select ename from emp where ename like 's%'; select ename from emp where ename like '%s'; select ename from emp where ename like '%s%'; select ename from emp where ename like '_l%';
7.查詢每種工作的最高工資、最低工資、人數(shù)
8.列出薪金 高于 公司平均薪金的所有員工號,員工姓名,所在部門名稱,上級領(lǐng)導(dǎo),工資,工資等級
select e.empno,e.ename,d.dname,e.mgr,e.sal,s.grade from emp as e left join dept as d on e.deptno=d.deptno left join salgrade as s on e.sal>s.losal and e.sal<hisal where e.sal>(select avg(sal) from emp)9.列出薪金 高于 在部門30工作的 所有/任何一個(gè)員工的薪金的員工姓名和薪金、部門名稱。
select e.ename,e.sal,d.dname from emp as e left join dept as d on e.deptno=d.deptno where e.sal>(select max(sal) from emp where deptno=30)select e.ename,e.sal,d.dname from emp as e left join dept as d on e.deptno=d.deptno where e.sal>(select min(sal) from emp where deptno=30)總結(jié)
以上是生活随笔為你收集整理的-sql语法-2-部门表的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 攻防世界-favorite_number
- 下一篇: 开拓新城· 西安 | 时速云签约陕建数科