用scott登录对里面的表进行操作:
1.开启相应的服务
2.打开cmd
3.输入set oracle_sid=orcl
4.输入命令sqlplus /nolog,登录
5.输入命令connect scott/password ,password为你的密码,连接
6.输入命令set line 300,设置行大小
7.输入命令set wrap off,设置不换行
8.输入命令set pagesize 300,设置页面大小
9. 输入命令select * from user_tables,查看里面的表信息
10.输入命令desc emp ,递减显示emp表
11.输入命令select * from emp,查看emp表
12.输入命令select '编号是:'||empno||'的雇员,姓名是:'||ename||',工作是:'||job|| from emp;
13.输入命令select * from emp where comm is not null;查看每月都有奖金的员工。
14.输入命令 select * from emp where hiredate like '%81%'; 查询81年雇用的员工。
15.输入命令select ename,substr(ename,1,3) from emp; 查询名字中的前三个字符。
16.输入命令select ename,substr(ename,-3,3) from emp; 查询名字中的后三个字符。
17.输入命令select round(789.256) from dual; 使用四舍五入函数,dual为伪表。
18.输入命令select round(789.256,2) from dual;取两位小数。
19.输入命令select round(789.256,-2) from dual; 取百位。
20.输入命令select mod(10,3) from dual; 10 对3取模得1。
21.输入命令select sysdate from dual; 查询系统时间。
查询员工表和部门表:
select e.* ,d.* from emp e,dept d;
要求查询出雇员的编号,姓名,部门编号,部门名称及部门的位置
select e.* ,d.* from emp e,dept d where e.deptno=d.deptno;
右外连接:select e.* ,d.* from emp e,dept d where e.deptno(+)=d.deptno;
要求查询出每个雇员的姓名,工作,雇员的直接上级领导的姓名
select e1.empno,e1.ename,e1.deptno,e2.ename from emp e1,emp e2 where e1.mgr=e2.empno;
左外连接:select e1.empno,e1.ename,e1.deptno,e2.ename from emp e1,emp e2 where e1.mgr=e2.empno(+);
要求查询出每个雇员的姓名,
select e1.empno,e1.ename,e1.sal,decode(s.grade,1,'第一档',2,'第四档',3,'第三档',4,'第二档',5,'第五档'),d.dname,e2.ename from emp e1,emp e2,dept d
,salgrade s where e1.mgr=e2.empno(+) and d.deptno=e1.deptno
and e1.sal between s.losal and s.hisal;
select count(empno) from emp;
select max(sal),min(sal),avg(sal),sum(sal) from emp;
select deptno,count(empno) from emp group by deptno;
select d.deptno,count(e.empno),nvl(avg(sal),0) from emp e,dept d where e.deptno(+)=d.deptno group by d.deptno;
select job,sum(sal) su from emp where job<>'SALESMAN' group by job having sum(sal)>5000 order by su desc;
select * from emp where sal>(select sal from emp where empno='7654');
select * from emp where sal=(select min(sal) from emp);