Oracle查询语句习题与答案

发布 2022-09-02 14:02:28 阅读 7906

1 找出佣金高于薪金60%的雇员。

select * from emp where comm > sal * 0.6);

2 找出部门10中所有经理和部门20中所有办事员的详细资料。

select * from emp where (deptno = 10 and job = manager') or (deptno = 20 and job = clerk');

3 找出部门10中所有经理,部门20中所有办事员以及既不是经理又不是办事员但其薪金大于或等2000的所有雇员的详细资料。

select * from emp where (deptno = 10 and job = manager')

or (deptno = 20 and job = clerk'

or (sal > 2000 and job not in ('manager','clerk'))

4 找出收取佣金的雇员的不同工作。

select distinct job from emp where comm is not null;

5 找出不收取佣金或收取的佣金低于300的雇员。

select * from emp where comm is null or comm < 300;

6 找出各月最后一天受雇的所有雇员。

select * from emp where last_day(hiredate) =hiredate;

7 找出晚于26年之前受雇的雇员。

select * from emp where sysdate > add_months(hiredate,26 * 12) ;

8 显示只有首字母大写的的所有雇员的姓名。

select initcap(ename) from emp;

9 显示正好为5个字符的雇员的姓名。

select * from emp where length(ename) =5;

10显示不带有“r”的雇员姓名。

select * from emp where ename not like '%r%';

11显示所有雇员的姓名的前三个字符。

select substr(ename,0,3) from emp;

12显所有雇员的姓名,用a替换所有“a”。

select replace(ename,'a','a') from emp;

13显示所有雇员的姓名以及满10年服务年限的日期。

select ename,add_months(hiredate,12 * 10) from emp;

14显示雇员的详细资料,按姓名排序。

select * from emp order by ename;

15显示雇员姓名,根据其服务年限,将最老的雇员排在最前面。

select * from emp order by hiredate asc;

16显示所有雇员的姓名、工作和薪金,按工作的降序排序,而工作按薪金排序。

select ename,job,sal from emp order by job desc,sal desc;

17显示所有雇员的姓名和加入公司的年份和月份,按雇员受雇日所在月排序,并将最早年份的项目排在最前面。

select ename,to_char(hiredate,'yyyy-mm') from emp order by to_char(hiredate,'mm') asc ,to_char(hiredate,'yyyy') asc;

18显示在一个月为30天的情况下所有雇员的日薪金,取整。

select round(sal / 30,0) from emp;

19找出在(任何年份的)2月受聘的所有雇员。

select * from emp where to_char(hiredate,'mm') 2;

20对于每个雇员,显示其加入公司的天数。

select ceil(sysdate-hiredate) from emp;

3oracle查询语句练习

实验三 查询语句的练习。一 实验目的。1.掌握select语句的基本语法 2.掌握子查询的表示 3.掌握多表查询的表示 二 实验内容及步骤。以scott登录数据库,查看scott用户已经存在的 并使用scott用户已存在的 做以下查询。注 把查询语句粘贴到相应题目下面,并保存。1 查看dept表结构...

Oracle基础查询关联查询练习题

有职员表 emp,表结构如表 1所示 表 1 职员表emp 信息。emp 表中的示例数据如图 1所示 图 1有部门表 dept,表结构如表 2所示 表 2 部门表 dept 信息。dept表中的示例数据如图 2所示 图 2需要完成如下查询 1 查询职员表中,在20和30号部门工作的员工姓名和部门号。...

实验五答案SQL语句查询

1 列出所有不姓刘的所有学生。selectsname,snofromstudent wheresnamenotlike 刘 2 列出姓 沈 且全名为3个汉字的学生selectsnamefromstudent wheresnamelike 沈 3 显示在1985年以后出生的基本信息。selectsno...