06oracle学习资料系列
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第6章数据查询
Copyright2008,Oracle HJC
Chapter6–Page1
6.1基本查询
【训练1】指定检索字段。
Select*from emp;
Select*from scott.emp;
Select deptno,dname form dept;
【训练2】显示行号。
Select rownum,ename from emp;
[说明]显示的行号是查询结果的行号,数据在数据库中是没有行号的。
【训练3】显示计算列。
Select ename,sal,sal*(1+20/100)from emp;
【训练4】在查询中使用列别名。
Select ename as名称,sal工资from emp;
【训练5】在列名上使用双引号。
Select ename as"Name",sal*12+5000as"年度工资(加年终奖)"
from emp;
[说明]别名"Name"中有大小写区别,别名"年度工资(加年终奖)"中出现了括号,属于特殊符号,所以需要使用双引号。
【训练6】连接运算符的使用。
Select ename||':'||job as雇员和职务表from emp;
【训练7】在查询中使用字符串常量。
Select ename||'IS'||job AS"雇员和职务表"from emp;
【训练8】消除重复行。
Select distinct job from emp;
Copyright2008,Oracle HJC
Chapter6–Page2
6.2查询结果的排序
【训练1】升序排序。
Select ename,sal
from emp
order by sal;
[说明]若省略ASC和DESC,默认为ASC,即升序排列。
【训练2】降序排序。
Select ename,hiredate
From emp
Order by hiredate desc;
【训练3】多列排序。
Select ename,deptno,hiredate
From emp
Order by deptno,hiredate;
【训练4】在排序中使用别名。
Select empno,ename,sal*12as total
From emp
Order by total;
Copyright2008,Oracle HJC
Chapter6–Page3
6.3条件查询
【训练1】简单查询:><>=<==<>
Select ename,job,sal
From emp
Where job=’SALESMAN’;
[说明]字符串和日期型数据的是包含在单引号中的。
【训练2】简单查询:显示工资大于等于3000的雇员姓名、职务和工资。
Select ename姓名,job职务,sal工资
From emp
Where sal>=3000;
【训练3】简单查询:显示1982年以后雇佣的职员姓名和雇佣时间。
Select ename,hiredate
From emp
Where hiredate>=’1-1月-82’;
【训练4】复合条件查询:逻辑与-AND
Select ename,job,sal
From emp
Where sal>1000and sal<2000;
【训练5】复合条件查询:逻辑或-OR
Select*
From emp
Where job=’CLERK’OR job=’MANAGER’;
【训练6】复合条件查询:逻辑非-NOT
Select*
From emp
Where NOT deptno=10;
【训练7】复合条件查询:逻辑或和逻辑与:显示部门10和部门20中工资小于1500的雇员。
Select*
From emp
Where(deptno=10or deptno=20)and sal<1500;
【训练8】条件特殊表示法:[NOT]BETWEEN…AND…的用法。
Select*
From emp
Where sal between1000and2000;
[说明]between包括边界,not between不包括边界。
【训练9】条件特殊表示法:[NOT]IN(…)的用法。
Select*
Copyright2008,Oracle HJC
Chapter6–Page4
From emp
Where job in(‘SALESMAN’,’CLERK’,’MANAGER’);【训练10】条件特殊表示法:[NOT]LIKE匹配模式的用法。
Select*
From emp
Where ename like‘S%’;
Select*
From emp
Where ename like‘_A%’;
[说明]“_”代表任意一个字符;“%”代表任意字符,个数任意。【训练11】条件特殊表示法:判断空值NULL,用法:IS[NOT]NULL。
Select ename,mgr
From emp
Where mgr is null;
Copyright2008,Oracle HJC
Chapter6–Page5