1查询emp表中所有数据select*fromemp;2.查询emp表中ename,job,sal几列,其中sal列在结果集中已别名salary查询selectename,job,salsalaryfromemp;3.查询emp表中deptno,ename,年工资,并将年工资命名别名totalsalaryselectdeptno,ename,12*saltotalsalaryfromemp;4.查询emp表结构在命令窗口输入descemp;5.查询emp表中雇员号,雇员的名字,工作岗位,入职日期selectempno,ename,job,hiredatefromemp;6.查询员工表中部门编号,重复的部门只查询一次selectdistinctdeptnofromemp;7.在结果集中雇员名和工作岗位相连用空格都号空格分隔,并将列表标题查询为EmployeeandTitle--别名selectename||''||','||''||jobEmployeeandTitlefromemp;8.查询职位(JOB)为'PRESIDENT'的员工工资selectempno,ename,salfromempwherejob='PRESIDENT';9.查询佣金(comm)为0或为null的员工信息select*fromempwherecomm=0orcommisnull;10.查询入职日期在1981-5-1,到1981-12-31之间所有员工信息select*fromempwherehiredatebetweento_date('1981-5-1','yyyy-MM-dd')andto_date('1981-12-31','yyyy-MM-dd');11.查询所有名字长度为4的员工编号,姓名selectempno,enamefromempwherelength(ename)=4;12.显示十号部门的所有经理('MANAGER')和20号部门所有职员('clerk')的详细信息select*fromempwheredeptno=10andjob='MANAGER'ordeptno=20andjob='CLERK';13.显示姓名中没有L字的员工的详细信息或含有SM字的员工信息@1,select*fromempwhereenamelike'%isnotL%'orenamelike'%SM%';@2,select*fromempwhereenamenotlike'%L%'orenamelike'%SM%';14.显示各部门经理(MANAGER)的工资selectdeptno,salfromempwherejob='MANAGER';15.显示佣金(COMM)收入比工资(SAL)高的员工详细信息select*fromempwheresalcomm;16.按照入职日期由新到旧排列员工信息select*fromemporderbyhiredatedesc;----------------------------------------------------------------聚合函数--分组函数--1.求emp表中工资总和selectsum(sal)fromemp;--2.求emp表中工资平均值selectavg(sal)fromemp;--3.求emp表中最小工资selectmin(sal)fromemp;--4.求emp表中最大工资selectmax(sal)fromemp;--5.求emp表的总行数,再求出部门编号去重后的总行数selectcount(*)fromemp;selectsum(distinctdeptno)fromemp;--6.求有奖金的员工的行数selectcount(comm)fromemp;--7.求所有员工的平均奖金selectavg(sal)fromemp;--8.求每个部门的工资总和selectdeptno,sum(sal)fromempgroupbydeptno;--9.求每个部门的平均工资selectdeptno,avg(sal)fromempgroupbydeptno;--10.求每个部门的最小工资selectdeptno,min(sal)fromempgroupbydeptno;--11.求每个部门的最大工资selectdeptno,max(sal)fromempgroupbydeptno;--12.求每个部门中从事不同工作的员工的工资总和selectdeptno,job,sum(sal)fromempgroupbydeptno,job;--13.求每个部门中从事不同工作的员工的平均工资selectdeptno,job,avg(sal)fromempgroupbydeptno,job;--14.求每个部门中从事不同工作的员工的最小工资selectdeptno,job,min(sal)fromempgroupbydeptno,job;--15.求每个部门中从事不同工作的员工的最大工资selectdeptno,job,max(sal)fromempgroupbydeptno,job;--16.查出平均工资大于2000的部门selectdeptnofromempgroupbydeptnohavingavg(sal)2000;--01.查询各个部门的平均工资selectdeptno,avg(sal)fromempgroupbydeptno;--02.显示各种职位的最低工资selectjob,min(sal)fromempgroupbyjob;--18.查询每个部门的最高工资selectdeptno,max(sal)fromempgroupbydeptno;--19.查询每个部门,每种职位的最高工资selectdeptno,job,max(sal)fromempgroupbydeptno,job;--22.查询各部门工资最高的员工信息select*fromempewheree.sal=(selectmax(sal)fromempwheredeptno=e.deptno);--注意--24.查询出有3个以上下属的员工信息(分级查询-having)select*fromempewhere(selectcount(*)fromempwheree.empno=mgr)=3;--25.查询所有大于本部门平均工资的员工信息(分组)select*fromempewheresal(selectavg(sal)fromempwheree.deptno=deptno);09.查询所有工资高于平均工资(平均工资包括所有员工)的销售人员('SALESMAN')(聚合函数)select*fromempwherejob='SALESMAN'andsal(selectavg(sal)fromemp);13.查询各个职位员工工资大于平均工资(平均工资包括所有员工)的人数和员工职位(聚合函数)selectcount(*),jobfromempwheresal(selectavg(sal)fromemp)groupbyjob;*********************************************************多表连接--1.查看每个员工都工作在哪个城市selectename,locfromempe,deptdwheree.deptno=d.deptno;2.查看每个员工都工作在哪个城市并在结果集中显示40部门信息--1selectename,locfromempe,deptdwheree.deptno=d.deptnoande.deptno=40;--2select*from(selecta.deptnodeptno,locfromempa,deptdwherea.deptno=d.deptno)cwherec.deptno=40;--3.查看每个员工的工资等级selecte.*,s.gradefromempe,salgradeswheresalbetweenlosalandhisal;--4.查看每个员工的直属管理者selecte.*,e2.enamefromempe,empe2wheree.mgr=e2.empno;----04.查询员工的基本信息,附加其上级的姓名(多表查询-自连接)selecte.*,e2.enamefromempe,empe2wheree.mgr=e2.empno;--10.显示所有职员的姓名及其所在部门的名称和工资(多表查询)selectename,job,dnamefromempe,deptdwheree.deptno=d.deptno;--11.查询在研发部('RESEARCH')工作员工的编号,姓名,工作部门,工作所在地(多表查询)selectempno,ename,dname,locfromempe,deptdwheree.deptno=d.deptnoanddname='RESEARCH';--12.查询各个部门的名称和员工人数(分组+多表查询)selecte.deptno,cfrom(selectcount(*)c,deptnofromempgroupbydeptno)e,deptdwheree.deptno=d.deptno;--20.查询每个员工的信息及工资级别(用到表Salgrade)(多表查询)selecte.*,s.gradefromempe,salgradeswheresalbetweenlosalandhisal;*****************************************子查询--1.部门编号与7934相同的人有哪些?select*fromempwheredeptno=(selectdeptnofromempwhereempno=7934);--2.参加工作比7788晚的人有哪些?select*fromempwherehiredate(selecthiredatefromempwhereempno=7934);--3.每个部门拿最少工资的人?(分组)selectdeptno,min(sal)fromempgroupbydeptno;--4.姓名中第二个字母为L的人的工资是多少?selectename,salfromempwhereenamelike'_L%';--5.81年2月参加工作的人工资是多少?--错误selectename,sal,hiredatefromempwherehiredatebetweento_date('1981-02-01','yyyy-mm-dd')andto_date('1981-02-28','yyyy-mm-dd');--6.工资前10名的人?selectrownumrn,tt.*from(select*fromemporderbysaldesc)ttwhererownum11;--7.大于30部门最大工资的人?(分组)select*fromempwheresal(selectmax(sal)fromempwheredeptno=30);select*fromempwheresalall(selectsalfromempwheredeptno=30);--8.工资高于本部门平均工资的人(拿上游工资的人)?(分组)select*fromempe,(selectavg(sal)avgsal,deptnofromempgroupbydeptno)bwheree.deptno=b.deptnoande.salb.avgsal;--9.工资相同的人有哪些?--1select*fromempwheresalin(selectsalfromempgroupbysalhavingcount(empno)1);--2select*fromempewhere(selectcount(*)fromempwheresal=e.salgroupbysal)1;--按工资分组--记录大于1--注意