说出去的话 就别管别人咋想 拽拽的该干啥干啥

SQL语言

上一篇 / 下一篇  2009-10-13 10:58:31 / 个人分类:oracle

oracl课程结束啦,觉得以后可能用的最多的应该就是这些sql语句了。
把上课时老师让做的这些任务整理出来,再练习一遍咯~

数据定义语言(DDL):create,alter,drop
CREATE TABLE departments_t (d_no NUMBER, name char(20));  
ALTER TABLE departments_t ADD (d_index number);
Drop Table departments_t;

数据库操作语言(DML):insert,select,update,delete
insert into tablename[(col1,col2)] valuses(val1[,val2])
Updete tablename set col1=val1[,col2=val2 where exp]
Delete tablename [where exp]
练习:
在TempEmployees表中插入一个员工ID为503的员工,Job_ID为HR_REP,部门ID为40,姓名为“Mr’Wang”
修改TempEmployees表中ID为503的员工的email为’tilancs’
删除TempEmployees表中所有部门ID为40的员工

select
①查询所有的员工信息
–查询所有的部门信息,并使用中文显示列名
②查询所有已经存在员工的部门的部门ID
③查询所有的员工信息,并按FIRST_NAME升序
–查询所有的员工信息,按部门ID降序,并按工资升序
④查询所有员工工资增加两倍的情况;
–查询所有员工工资减100的情况;
–查询所有员工雇用日期增加10天的情况;
⑤查询所有的员工信息,并将FIRST_NAME和LAST_NAME合并成使用“_”连接的Name 字段
⑥查询所有薪水大于等于10000的员工
–查询所有部门ID不等于80的员工
–查询所有FIRST_NAME为Grant,Fay和Mavris的员工
–查询电话号码以650开头的员工
–查询所有工号在100和200之间的员工
⑦查询所有Job_ID为ST_MAN,并且工资大于2000的员工
–查询Manager_id为100或者department_id为80的员工
–查询电话号码不以650开头的员工
⑧查询没有所属部门的员工
–查询所有存在所属部门的员工
–查询员工信息,如果没有所属部门,则显示“0”
–临时变量的概念"&a"
⑨查询所有1997年12月12号之前入职的人员
–2008年3月30号距离今天有几周
–查询所有员工工龄增加2年的情况
⑩查询所有Last_name超过4个字符的员工
–查询所有员工的电话前3位
–查询所有员工,并做如下转换: 10-〉‘研发’,  20-〉 ‘制造’,30-〉 ‘支援’,40,-〉‘销售’,其他-〉 ‘其他
⒈以下两个语句的结果各是什么?
SELECT ROUND(15.193,1) "Round" FROM DUAL;
SELECT ROUND(15.193,-1) "Round" FROM DUAL;
计算2的100次方
⒉查询所有员工的平均工资
–查询最早入职的员工
–查询所有工资大于2000的员工的工资总合
–查询有多少员工没有部门信息
⒊查询每个职位上最早入职的员工的入职日期
–查询每个管理人员所管理的人员的工资总额,并且排除所管理人员的平均工资小于2000的管理人员
⒋select count(*) from employees,employees返回值是多少
–查询所有员工,需要显示的信息包括员工姓名,头衔
–select count(*) from employees,departments where employees.department_id = departments.department_id返回多少条记录
–查询所有的员工,需显示的信息包括员工姓名,所属部门,地区,国家和区域  
–select * from employees full join departments on employees.department_id = departments.department_id返回多少条记录
–查询所有员工和其管理人员的姓名 
⒌查询所有工资大于平均工资的员工 
–查询所有部门平均工资大于5000员工
–查询所有其工资大于其历史工作的工资最大值的平均值员工;
⒍查询所有存在员工的部门信息;
⒎取部门ID为40 的员工最大工资和部门ID为80的员工的最小工资;
⒏导出并导入HR.Tempemployees中的所有数据
–导出HR用户的所有信息,并导入到EHR用户中
⒐创建一个表,名称为TempEmployees,包括所有部门ID为80的员工
–在TempEmployees插入所有部门ID为40的员工
⒑创建一个视图,名称为“员工部门信息”,包括员工姓名,所属部门名称,工资和邮件地址;
–创建一个视图,名称为“高薪员工”,包括所有工资超过10000的员工,显示信息包括员工姓名,工资;
–从两个视图中查询数据;
创建一个表,表名为“CERTIFICATE”,一位员工可可以有一份或多份证书,也可以没有证书
需要包括的字段:
“ID”,int
“CERTIFICATE_NAME”,nvarchar2 ,长度100,必填
“DATE”,日期类型
主键为ID
⒒在tempemployees上分别加入以下约束
–主键为EMPLOYEE_ID
–在DEPARTMENT_ID上建立外键约束
–在EMAIL上建立唯一约束
–JOB_ID不能为空
–SALARY需要〉0
–SALARY默认为100
⒓在tempemployees表上建以下索引
–AST_NAME, FIRST_NAME的普通组合索引
–Email上的唯一索引

事务处理控制命令
commit提交,savepoint检查点,rollback回滚

数据控制语言
grant,revoke(授予权限和撤销权限)


TAG:

 

评分:0

我来说两句

日历

« 2024-05-17  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 10533
  • 日志数: 12
  • 建立时间: 2009-09-25
  • 更新时间: 2009-12-30

RSS订阅

Open Toolbar