Oracle练习题总结

本文总结了多个Oracle SQL查询示例,包括日期操作、字符串处理、分组排序、连接查询、子查询以及复杂的条件筛选等,旨在帮助读者熟练掌握Oracle数据库的查询技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

1:找出各月最后一天受雇的所有雇员

 select * from emp wherehiredate=last_day(hiredate)

 

2:找出早于36年之前受雇的雇员

   select * from emp whereadd_months(hiredate,12*36)<sysdate

 

3:显示只有首字母大写的所有雇员的姓名

 select * from emp where ename=initcap(ename);

 

4:显示正好为5个字符的雇员姓名

 select * from emp where ename like '_____';

 

5:显示不带有‘R’的雇员姓名

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

 

6:显示所有雇员的姓名的前3个字符

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

 

7:显示所有雇员的姓名,用‘a’替换所有的‘A’

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

 

 

 

8:显示所有雇员的姓名以及满36年服务年限的日期

selectename,hiredate from emp where add_months(hiredate,12*36)<sysdate

 

9:显示雇员的详细资料,按姓名降序排序

 select * from emp order by ename desc ;

 

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

selectename,hiredate from emp order by hiredate asc;

 

 

11:显示所有雇员的姓名、工作和薪金,按工作降序排序,而工作相同的按薪金升序排序

selectename,job,sal from emp order by job desc,sal asc;

 

12:显示所有雇员的姓名和加入公司的年份和月份

   select ename,to_char(hiredate,'yyyyMM') fromemp;

 

 

 

13:显示在一个月为30天的情况下所有雇员的日薪金,忽略小数

selectename,trunc(sal/30) from emp;

select ename,floor(sal/30)from emp;

 

14:找出在(任何年份的)2月份受雇的所有雇员

selecten

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值