SQL语言基础考核(二)(oracle)
2.根据Oracle 数据库scott 模式下的emp 表和dept 表,完成下列操作:
(1) 查询20号部门的所有员工信息;
(2) 查询所有工种为CLERK 的员工的员工号、员工名和部门号;
(3) 查询奖金COMM 高于工资SAL 的员工信息;
(4) 查询奖金高于工资的20%的员工信息;
(5) 查询10号部门中工种为MANAGER 和20号部门中工种为CLERK 的员工的信息;
(6) 查询所有公众不是MANAGER 和CLERK ,且工资大于或等于2000的员工的详细信息;
(7) 查询有奖金的员工的不同工种;
(8) 查询所有员工工作与奖金的和;
(9) 查询没有奖金或奖金低于100的员工信息;
(10)查询各月倒数第二天入职的员工信息;
(11)查询工龄大于或等于10年的员工信息;
(12)查询员工信息,要求以首字母大写的方式显示所有员工的姓名;
(13)查询员工名正好为6个字母的员工信息;
(14)查询员工名字中不包含字母S 的员工;
(15)查询员工姓名的第二个字母为M 的员工信息;
(16)查询所有员工姓名的前三个字符;
(17)查询所有员工的姓名,如果包含字母s ,则用S 替换;
(18)查询员工的姓名和入职日期,并按入职日期从先到后进行排序;
(19)显示所有员工的姓名、工种、工资和京津,按工种降序排序,若工种相同则按工资升序排序;
(20)显示所有员工的姓名、入职的年份和月份,按入职日期所在的月份排序,若月份相同则按入职的年份排序;
(21)查询在2月份入职的所有员工信息;
(22)查询所有员工入职以来的工作期限,用“**年**月**日”的形式表示;
(23)查询至少有一个员工的部门信息;
(24)查询工资比SMITH 员工 工资高的所有员工信息;
(25)查询所有员工的姓
相关文档:
oracle表空间操作详解
1
2
3作者: 来源: 更新日期:2006-01-04
5
6
7建立表空间
8
9CREATE TABLESPACE data01
10DATAFILE '/ora ......
select datediff(month,'2009-11-02','2009-12-01')
不知道你要怎么个月差异
上面的命令结果也是1
但是其实按照常识差异不是一个月,是差一天一个月
这有段现成的代码可以帮助你算出常识上的差异
SQL code
declare @t table(a datetime,b datetime);
insert @t
select '2009-11-02','2009-12-01' UNION ......
在Oracle中可以创建组合索引,即同时包含两个或两个以上列的索引。在组合索引的使用方面,Oracle有以下特点:
1、 当使用基于规则的优化器(RBO)时,只有当组合索引的前导列出现在SQL语句的where子句中时,才会使用到该索引;
2、 在使用Oracle9i之前的基于成本的优化器(CBO)时 ......
第一部分、SQL&PL/SQL
[Q]怎么样查询特殊字符,如通配符%与_
[A]select * from table where name like 'A_%' escape ''
[Q]如何插入单引号到数据库表中
[A]可以用ASCII码处理,其它特殊字符如&也一样,如
insert into t values('i'||chr(39)||'m'); -- chr(39)代表字符'
或者用两个单引号表示一个
or ......