您的位置:首页 > 数据库 > Oracle

Oracle练习二(亲测有效)

2019-01-21 21:21 337 查看

–1.查询工资大于1200的员工姓名和工资
SELECT ENAME,SAL from EMP WHERE SAL>=1200;
–2. 查询员工号为7934的员工的姓名和部门号
SELECT ENAME,EMPNO FROM EMP WHERE EMPNO=7934;
–3. 选择工资不在5000到12000的员工的姓名和工资  
SELECT ENAME,SAL FROM EMP WHERE not SAL BETWEEN 5000 AND 12000 ORDER BY SAL;  
 --4. 选择雇用时间在1981-02-01到1981-05-01之间的员工姓名,职位(job)和雇用时间,按从早到晚排序.
SELECT ename,job,HIREDATE FROM EMP WHERE HIREDATE BETWEEN TO_DATE(‘1981-02-01’,‘YYYY-MM-DD’) AND TO_DATE(‘1981-05-01’,‘YYYY-MM-DD’);
–5. 选择在20或10号部门工作的员工姓名和部门号  
SELECT ENAME,DEPTNO from emp where DEPTNO in(20,10) ORDER BY SAL DESC;
–6. 选择在1987年雇用的员工的姓名和雇用时间
SELECT ENAME,HIREDATE from emp where EXTRACT(YEAR FROM HIREDATE)=1987;
–7. 选择公司中没有管理者的员工姓名及job.
SELECT ENAME,JOB FROM EMP where not JOB like ‘MANAGER’;

–8.找出各月倒数第3天受雇的所有员工.
SELECT * FROM EMP WHERE HIREDATE=(LAST_DAY(HIREDATE)-2);
9.找出早于12年前受雇的员工.
SELECT * FROM EMP WHERE MONTHS_BETWEEN(SYSDATE, HIREDATE)>1212;
–10.以首字母大写的方式显示所有员工的姓名.  
SELECT INITCAP(ENAME) FROM EMP ;
–11.显示正好为5个字符的员工的姓名.
SELECT ENAME FROM EMP WHERE ENAME LIKE ‘_____’;
–12.显示不带有"R"的员工的姓名  
SELECT ENAME FROM EMP WHERE NOT ENAME LIKE ‘%R%’;
–13.显示所有员工姓名的前三个字符
SELECT SUBSTR(ENAME, 1, 3)FROM EMP;
–14.显示所有员工的姓名,用a替换所有"A"   
SELECT REPLACE(‘ENAME’,‘A’,‘a’)FROM EMP;
–15.显示满10年服务年限的员工的姓名和受雇日期.:  
SELECT ENAME,HIREDATE FROM EMP WHERE MONTHS_BETWEEN(SYSDATE, HIREDATE)>1210;
–16.显示员工的详细资料,按姓名排序.  
SELECT * FROM EMP ORDER BY ename;
–17.显示员工的姓名和受雇日期,根据其服务年限,将最老的员工排在最前面.
SELECT ENAME,HIREDATE FROM EMP ORDER BY HIREDATE; 
–18.显示所有员工的姓名、工作和薪金,按工作的降序排序,若工作相同则按薪金排序.  
SELECT ename,job,sal FROM emp ORDER BY JOB DESC,sal asc;
–19.显示所有员工的姓名、加入公司的年份和月份,按受雇日期所在月排序,若月份相同则将最早年份的员工排在最前面.    
SELECT ENAME,TO_CHAR(HIREDATE,‘YYYY’),TO_CHAR(HIREDATE,‘MM’) FROM EMP ORDER BY TO_CHAR(HIREDATE,‘MM’) DESC,TO_CHAR(HIREDATE,‘YYYY’) ASC;
–20.找出在(任何年份的)2月受聘的所有员工。
SELECT * FROM EMP WHERE TO_CHAR(HIREDATE,‘MM’)=2;  
–21.对于每个员工,显示其加入公司的天数.  
SELECT ENAME 姓名,TRUNC(SYSDATE-HIREDATE, 0) 总共天数 FROM EMP;
–22.显示姓名字段的任何位置包含"A"的所有员工的姓名.
SELECT ENAME FROM EMP WHERE ENAME LIKE ‘%A%’;
–23.查询在1981年入职的员工的总数量
SELECT COUNT(HIREDATE)FROM EMP WHERE EXTRACT(YEAR FROM HIREDATE)=1981;

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: