资源描述:
《oracle练习及答案备课讲稿.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、测试一1.SQL*PLUS命令可以控制数据库(no)2.下面的语句是否可以执行成功(yes)selectlast_name,job_id,salaryassalfromemployees;3.下面的语句是否可以执行成功(yes)select*fromemployees;4.找出下面语句中的错误selectemployee_id,last_namesal*12ANNUALSALARYfromemployees;列于列之间未用逗号分隔别名应用引号括起来5.显示表departments的结构,并查询其中的全部数据descdepartmentsselect*fromdepartments;6.显示出
2、表employees中的全部job_id(不能重复)selectdistinctjob_idfromemployees;7.显示出表employees的全部列,各个列之间用逗号连接,列头显示成OUT_PUTselectEMPLOYEE_ID
3、
4、','
5、
6、FIRST_NAME
7、
8、','
9、
10、LAST_NAME
11、
12、','
13、
14、EMAIL
15、
16、','
17、
18、PHONE_NUMBER
19、
20、','
21、
22、HIRE_DATE
23、
24、','
25、
26、JOB_ID
27、
28、','
29、
30、SALARY
31、
32、','
33、
34、COMMISSION_PCT
35、
36、','
37、
38、MANAGER_ID
39、
40、','
41、
42、DEPARTMENT_IDas"OUT_PUT"from
43、employees;测试二1.查询工资大于12000的员工姓名和工资SELECTFIRST_NAME,salaryFROMemployeesWHEREsalary>12000;2.查询员工号为176的员工的姓名和部门号SELECTFIRST_NAME,department_idFROMemployeesWHEREemployee_id=176;1.选择工资不在5000到12000的员工的姓名和工资SELECTFIRST_NAME,salaryFROMemployeesWHEREsalaryNOTBETWEEN5000AND12000;2.选择雇用时间在1998-02-01到1998-05-0
44、1之间的员工姓名,job_id和雇用时间SELECTFIRST_NAME,job_id,hire_dateFROMemployeesWHEREhire_dateBETWEEN'01-2月-98'AND'01-5月-98';3.选择在20和50号部门工作的员工姓名和部门号SELECTFIRST_NAME,department_idFROMemployeesWHEREdepartment_idIN(20,50);4.选择在1994年雇用的员工的姓名和雇用时间SELECTFIRST_NAME,hire_dateFROMemployeesWHEREhire_dateLIKE'%94';5.选择公司中
45、没有管理者的员工姓名及job_idSELECTFIRST_NAME,job_idFROMemployeesWHEREmanager_idISNULL;6.选择公司中有奖金的员工姓名,工资和奖金SELECTFIRST_NAME,salary,commission_pctFROMemployeesWHEREcommission_pctISNOTNULL;7.选择员工姓名的第三个字母是a的员工姓名SELECTFIRST_NAMEFROMemployeesWHEREFIRST_NAMELIKE'__a%';8.选择姓名中有字母a和e的员工姓名SELECTFIRST_NAMEFROMemployees
46、WHERE(FIRST_NAMELIKE'%e%a%'ORFIRST_NAMELIKE'%a%e%')测试三1.显示系统时间Selectsysdate"Date"fromdual2.查询员工号,姓名,工资,以及工资提高百分之20%后的结果(newsalary)selectempno,ename,sal,round(sal*1.20,0)as“newsalary”fromemp;3.将员工的姓名按首字母排序,并写出姓名的长度(length)selectename"Name",length(ename)"Length"fromemporderbysubstr(ename,1,1);4.查询各员工
47、的姓名,并显示出各员工在公司工作的月份数(worked_month)。selectename,round(months_between(sysdate,hiredate))asworked_monthfromemp;5.查询员工的姓名和工资,按下面的形式显示enameSALking$$$$$$$$$$24000selectlower(ename)ename,lpad(sal,15,'$')salfromemp