Oracle学习笔记8
一.常见问题
1)求部门中哪些人的薪水最高
Select ename, sal from emp
Join (select max(sal) max_sal, deptno from emp group by deptno) t
On (emp.sal = t.max_sal and emp.deptno = t.deptno);
2)求部门平均薪水的等级
Select deptno, avg_sal, grade from
(select deptno, avg(sal) avg_sal from emp group by deptno) t
Join salgrade s on (t.avg_sal between s.lowsal and s.highsal);
3)求部门平均的薪水等级
Select deptno, avg(grade) from
(select deptno, ename, grade from emp join salgrade s on (emp.sal between s. lowsal and s.highsal)) t
Group by deptno;
4)求雇员中有那些人是经理人
Select ename from emp where empno in (select distinct mgr from emp);
5)不准用组函数,求薪水的最高值(面试题)
Select distinct sal from emp where sal not in
(select distinct e1.sal from emp e1 join emp e2 on (e1.sal < e2.sal));
6)求平均薪水最高的部门的部门编号
Select deptno from (select avg(sal) avgsal, deptno from emp group by deptno)
Where avgsal = (select max(avgsal) from (select avg(sal) avgsal, deptno from emp group by deptno));
7)求平均薪水最高的部门名称
Select dname from dept where deptno =
(
Select deptno from (select avg(sal) avgsal, deptno from emp group by deptno)
Where avgsal = (select max(avgsal) from
(select avg(sal) avgsal, deptno from emp group by deptno)
);
);
8)求平均薪水的等级最低的部门的部门名称
select deptname
from (
select deptno, grade
from (
select deptno,avg(sal) avg_sal from emp group by deptno) t join salgrade s on
(t.avg_sal between s.lowsal and s.highsal)
) t1 join dept d on (t1.deptno = d.deptno);
where t1.grade =
(
select min(grade)
from (
&
相关文档:
本系列文章导航
[Oracle]高效的PL/SQL程序设计(一)--伪列ROWNUM使用技巧
[Oracle]高效的PL/SQL程序设计(二)--标量子查询
[Oracle]高效的PL/SQL程序设计(三)--Package的优点
[Oracle]高效的PL/SQL程序设计(四)--批量处理
[Oracle]高效的PL/SQL程序设计(五)--调用存储过程返回结果集
[Oracle]高效的PL/SQL程序设计(六)- ......
windows上存在32bit的限制,如AIX、HP UNIX 等有明确的64BIT OS and ORACLE的版本,32bit oracle可以装在64bit os 上,64 bit oracle不能装在32 bit OS上
oracle是64bit or 32 bit,32bit 通常 SGA有 1.7G 的限制(某些OS的处理或者WINDOWS上有特定设定可以支持到2G以上甚至达到3.7G
如何查出前台正在发出的sql语句:
sele ......
问题一:如保加载JDBC驱动程序:
正常我们加载驱动程序有三个途径:
1.Class.forName(String)这想当于classLoader一个String指定的类,在装载时把该驱动程序的静态内容都初始化,其实这时驱动程序类调用了DriverManager.registerDriver(driver)方法。
2.使用系统属性:System.getPro ......
mysql 大对象存取:
类型一般应该用mediumblod,
blob只能存2的16次方个byte,
mediumblod是24次方,
一般来说够用了.longblob是32次方有些大.
MYSQL默认配置只能存1M大小的文件,要修改配置,WIN版本的在mysql.ini文件中
修改max_allowed_packet,net_buffer_length等几个参数,或直接SET GLOBAL va ......
数学函数
在oracle 中distinct关键字可以显示相同记录只显示一条
1.绝对值
S:select abs(-1) value
O:select abs(-1) value from dual
2.取整(大)
S:select ceiling(-1.001) value
O:select ceil(-1.001) value from dual
3.取整(小)
S:select floor(-1.001) value
......