-- 1、查询dept表的结构 desc dept; -- 2、检索dept表中的所有列信息select * from -- 3、检索emp表中的员工姓名、月收入及部门编号select e.ename , e.sal , e.deptno from -- 4、检索emp表中员工姓名、及雇佣时间/*日期数据的默认显示格式为"DD-MM-YY",如果希望使用其他显示格式(YYYY-MM-DD),那么必须使用TO_CHAR函数进行转换。*/select e.ename , to_char(e.hiredate,'yyyy-mm-dd') from -- 5、使用distinct去掉重复行。-- 检索emp表中的部门编号及工种,并去掉重复行。select distinct e.deptno , e.job from emp e-- 6、使用表达式来显示列-- 检索emp表中的员工姓名及全年的月收入select e.ename , e.sal*12 from -- 7、使用列别名-- 用姓名显示员工姓名,用年收入显示全年月收入。select e.ename "姓名" , e.sal*12 "年收入" from -- 8、连接字符串/*在oracle中连接字符串用"||"操作符来完成的,当连接字符串时,如果在字符串要加入数字值,那么在"||"后可以直接指定数字,如果在字符串加入字符和日期值,则必须要用单引号。检索emp表,用is a 这个字符串来连接员工姓名和工种两个字段*/select e.ename || ' is a ' || e.job from -- 9、使用WHERE子句-- 检索月收入大于2000的员工姓名及月收入。select e.ename , e.sal from emp e where e.sal>2000-- 检索月收入在1000元到2000元的员工姓名、月收入及雇佣时间。select e.ename , e.sal , e.hiredate from emp e where e.sal between 1000 and 2000 -- 10、like的用法:-- 检索以S开头的员工姓名及月收入。select e.ename , e.sal from emp e where e.ename like 'S%'-- 检索员工姓名中的第三个字符是A的员工姓名及月收入。select e.ename , e.sal from emp e where e.ename like '__A%' -- 11、在WHERE条件中使用IN操作符-- 检索emp表中月收入是800的或是1250的员工姓名及部门编号select e.ename , e.deptno from emp e where e.sal in(800,1250) -- 12、在WHERE条件中使用逻辑操作符(AND、OR、NOT)-- 显示在部门20中岗位CLERK的所有雇员信息select * from emp e where e.deptno=20 and e.job='CLERK'-- 显示工资高于2500或岗位为MANAGER的所有雇员信息select * from emp e where e.sal>2500 or e.job='MANAGER' -- 13、查询表中是空值的数据-- 检索emp表中有提成的员工姓名、月收入及提成。select e.ename , e.sal , e.comm from emp e where e.comm is not null -- 14、使用ORDER BY子句,进行排序。-- 检索emp表中部门编号是30的员工姓名、月收入及提成,并要求其结果按月收入升序、然后按提成降序显示。select e.ename , e.sal , e.comm from emp ewhere e.deptno=30 order by e.sal asc , e.comm desc