Oracle查询命令是数据库管理中非常基础且重要的技能,以下是对标题和描述中涉及的Oracle查询命令的详细说明: 1. **选择特定部门的雇员**: ```sql select * from emp where deptno=30; ``` 这条SQL语句用于选取`emp`表中`deptno`字段值为30的所有记录,即部门30的全部雇员信息。 2. **筛选特定职位的雇员**: ```sql select ename, empno, deptno from emp where job=upper('clerk'); ``` 查询`job`字段为"CLERK"(忽略大小写)的所有雇员的姓名、编号和部门。 3. **找出佣金高于薪金的雇员**: ```sql select * from emp where comm>sal; ``` 这条语句返回所有佣金(`comm`)高于薪金(`sal`)的雇员信息。 4. **找出佣金高于薪金60%的雇员**: ```sql select * from emp where comm>sal*0.6; ``` 这个查询会显示佣金超过其薪金60%的雇员的所有记录。 5. **多条件组合查询**: ```sql select * from emp where (deptno=10 and job=upper('manager')) or (deptno=20 and job=upper('clerk')); ``` 这里通过`OR`连接了两个条件,找出部门10的经理和部门20的办事员。 6. **更复杂的多条件组合查询**: ```sql select * from emp where (deptno=10 and job=upper('manager')) or (deptno=20 and job=upper('clerk')) or (job<>upper('manager') and job<>upper('clerk') and sal>=2000); ``` 除了上一个查询的条件外,还增加了既不是经理也不是办事员但薪金大于等于2000的雇员。 7. **找出不同的工作类型**: ```sql select distinct job from emp where comm>0; ``` 使用`DISTINCT`关键字去除重复,列出所有收取佣金的雇员的工作类型。 8. **筛选佣金条件的雇员**: ```sql select * from emp where nvl(comm,0)<100; ``` `NVL`函数用于处理NULL值,这里选取佣金为NULL或小于100的雇员。 9. **找到每月最后一天入职的雇员**: ```sql select * from emp where hiredate=last_day(hiredate); ``` `LAST_DAY`函数返回指定日期所在月份的最后一天,这个查询找到所有在当月最后一天入职的雇员。 10. **找出超过25年前入职的雇员**: ```sql select * from emp where months_between(sysdate,hiredate)/12>25; ``` `MONTHS_BETWEEN`函数计算两个日期之间的月份数,这个查询找到入职超过25年的员工。 11. **显示首字母大写的雇员姓名**: ```sql select ename from emp where ename=initcap(ename); ``` `INITCAP`函数将字符串的每个单词首字母转换为大写,显示这样的雇员姓名。 12. **筛选长度为6的雇员姓名**: ```sql select ename from emp where length(ename)=6; ``` 根据`ENAME`字段的长度进行筛选。 13. **排除包含特定字符的雇员姓名**: ```sql Select ename from emp where ename not like '%R%'; Select ename from emp where instr(ename,'R')=0; ``` 两种方式检查`ENAME`中是否包含字符'R',并排除这些记录。 14. **提取姓名的前三个字符**: ```sql select substr(ename,1,3) from emp; ``` 使用`SUBSTR`函数提取`ENAME`的前三个字符。 15. **替换字符**: ```sql Select replace(ename,’A’,’a’) from emp; ``` 将所有'A'替换为'a',显示修改后的雇员姓名。 16. **显示服务满10年的日期**: ```sql Select ename,add_months(hiredate,12*10) ‘服务年限的日期’ from emp; ``` 添加10年的月数到`hiredate`,表示服务满10年的日期。 17. **按姓名排序显示雇员信息**: ```sql Select * from emp order by ename; ``` 默认升序排列,可以使用`DESC`关键字进行降序排序。 18. **按入职时间排序显示雇员姓名**: ```sql Select ename from emp order by hiredate; ``` 按照入职时间的早晚排序显示雇员姓名。 19. **复合排序**: ```sql Select ename,job,sal from emp order by job desc, sal asc; ``` 先按工作类型降序,相同工作类型的雇员再按薪金升序排序。 20. **显示雇员入职的年份和月份**: ```sql select ename,to_char(hiredate,'yyyy'),to_char(hiredate,'mm') from emp order by hiredate asc; ``` 将`hiredate`转换为年份和月份,并按照入职日期升序排列。 21. **计算日薪**: ```sql select ename,sal/30 from emp; ``` 假设每月30天,计算雇员的日薪。 22. **找出2月入职的雇员**: ```sql select * from emp where to_char(hiredate,'mm')='02'; ``` 判断`hiredate`的月份是否为2月。 23. **计算服务天数**: 对于每个雇员,显示其入职至今的总天数。这个操作需要计算`sysdate`与`hiredate`之间的差值。 以上就是对Oracle查询命令的详细总结,涵盖了基础的选择、条件判断、聚合、排序、日期处理等多种功能,是数据库查询的基础操作。掌握这些命令能够帮助你有效地管理和分析Oracle数据库中的数据。
剩余6页未读,继续阅读
- 粉丝: 0
- 资源: 2
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 【全年行事历】5团建医药箱常备药清单.docx
- 【全年行事历】4团建活动物料清单.xlsx
- 【全年行事历】7团建活动策划书.docx
- 【全年行事历】ZOL团建活动策划方案.pptx
- 【全年行事历】XXX团建活动计划.pptx
- 【全年行事历】86团建活动培训PPT完.pptx
- 【全年行事历】公司年度活动计划.xls
- 【全年行事历】大型企业公司活动进度表.xlsx
- 【全年行事历】公司户外团建活动方案-某公司.pptx
- 【全年行事历】公司团建费用统计表.xlsx
- 【全年行事历】公司团建拓展行程方案-模版.docx
- 【全年行事历】公司全年团建活动方案.xls
- 【全年行事历】公司员工一年度关怀方案预算.xls
- 【全年行事历】公司团建活动项目介绍.pptx
- 【全年行事历】行政部年度活动策划及经费预算.xlsx
- 【全年行事历】行政全年活动筹备规划.xlsx