Oracle Select语句 练习2

用到的颜色:
color=FF4C29
color=00CC00
题目:

1. 显示满40年服务年限的员工的姓名和雇佣日期
2. 以年月日的方式显示所有员工的服务年限
3. 使用函数显示姓名字段的任何位置包含’A’的所有员工的姓名
4. 对于每个员工,显示其加入公司的天数
5. 找出在任意年份2月受聘的所有员工
6. 显示所有员工的姓名,用a代替A
7. 显示所有员工姓名的前三个字符
8. 以首字母大写的方式显示员工的姓名
9. 显示不带有’R’的员工姓名
10. 找出各月倒数第3天受雇的所有员工
11. 统计每年雇佣的人数

–1. 显示满40年服务年限的员工的姓名和雇佣日期
select ename,hiredate from emp where months_between(sysdate,hirdate)/12>=40;

–2. 以年月日的方式显示所有员工的服务年限
select ename,hiredate, trunc(months_between(sysdate,hiredate)/12) years ,
trunc(mod(months_between(sysdate,hiredate),12)) months,
trunc(sysdate-add_months(hiredate,months_between(sysdate,hiredate)))days
from emp;

select trunc(months_between(sysdate,hiredate)/12) ||‘年’ ||
trunc(mod(months_between(sysdate,hiredate),12)) ||‘月’ ||
round(mod((mod(months_between(sysdate,hiredate),12)30),30))||‘天’ from emp;

–3. 使用函数显示姓名字段的任何位置包含’A’的所有员工的姓名
select ename from emp where instr(ename,‘A’)<>0;
–4. 对于每个员工,显示其加入公司的天数
select ename,trunc(sysdate-hiredate) days from emp;

–5. 找出在任意年份2月受聘的所有员工
select ename,hiredate from emp where EXTRACT(month from hiredate)=2;

–6. 显示所有员工的姓名,用a代替A
select replace(ename,‘a’,‘A’)ename from emp;

–7. 显示所有员工姓名的前三个字符
select substr(ename,1,3) from emp;

–8. 以首字母大写的方式显示员工的姓名
select initcap(ename) ename from emp;

–9. 显示不带有’R’的员工姓名
select ename from emp where instr(ename,‘R’)=0;

–10. 找出各月倒数第3天受雇的所有员工
select * from emp where hiredate=last_day(hiredate)-2;

–11. 统计每年雇佣的人数
select extract(year from hiredate) year,count(*) from emp group by extract(year from hiredate);
select extract(year from hiredate) from emp;

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值