-
可以使用子查詢的地方 select 可以使用子查詢,但是要保證查詢出來的數據只能有一條 select empno,ename,sal,(select job from emp where ename='scott') from 這里可以使用子查詢 from (select empno,ename from emp) having 后面可以 having avg(sal)>(select max(sal) from emp where deptno=30) where 后面也可以,在這里就不說了 不能使用子查詢的地方 group by 在這里使用子查詢的話,系統會抱錯查看全部
-
select deptno,avg(sal) from emp group by deptno having avg(sal)>(select max(sal) from emp where deptno=30);查看全部
-
select deptno,avg(sal) from emp group by deptno having avg(sal)>(select max(sal) from emp where deptno=30); 這里不能使用where關鍵字,因為有分組函數查看全部
-
select empno,ename,sal,(select job from emp where emppno=7839) 第四列 from emp; (select job from emp where emppno=7839) 這個返回 的是一條數據,而不是多條數據,因此可以在select標簽中使用子查詢,注意:子查詢只能顯示單條數據查看全部
-
子查詢 select * from emp where ename='scott'; select sal from emp where sal>3000; select * from emp where sal>(select sal from emp where ename='scott');查看全部
-
select level,empno,ename,sal,mgr from emp connect by prior empno=mgr start with mgr is null order by 1; 自連接的優缺點:優點 便于產看數據 缺點 不適合大型數據表的查詢 層次查詢 優點:本質是一個單表查詢,不涉及笛卡爾乘積原理,便于查找 缺點: 查詢的數據不直觀,需要仔細查看查看全部
-
層次查詢本質上是單標查詢 select empno,ename,sal,mgr from emp connect by prior(關鍵字:相鄰兩層的上一層) empno=mgr start with mgr id null;(或者 start with empno=7839)查看全部
-
按部門統計員工人數,要求顯示:部門號,部門名稱,人數 select d.deptno,d.dname,count(e.empno) from emp e,dept d where d.deptno=e.detpno //這個where條件在這里不成立,因為兩張表的部門編號數量不統一時,會出現數據查找結果不準確 group by d.deptno,d.dname; 連接的核心:通過外連接,吧對于連接條件不成立的記錄,仍然包含在最后的結果中 左外連接:當連接條件不成立的時候,等號左邊的表仍然被包含 又外連接:當連接條件不成立的時候,等號右邊的表仍然被包含查看全部
-
oracle中的不等值查詢 select e.empno,e.ename,e.sal,s.grade from emp e,salgrade s where e.sal between s.losal and s.hisal; 注意 between ... and ... 前面的數據要小于后面的數據查看全部
-
查詢員工編號,名字,工資,部門名稱 select e.empno,e,ename,e.sal,d.dname from emp e,deptno d where e.deptno=d.deptno;查看全部
-
select deptno,job,sum(sal) from emp group by deptno,job; select deptno,sum(sal) from emp group by deptno; select sum(sal) from emp; 上面的三條語句合起來的效果與下面的一條語句相同,下面是group by 語句的加強 select deptno,job,sum(sal) from emp group by rollup(deptno,job); select 列名1,列名2,組函數(x) from tablename group by rollup(列名1,列名2);查看全部
-
求部門工資的最大值 select max(avg(sal)) from emp group deptno;查看全部
-
select deptno,avg(sal) from emp group by deptno having avg(sal)>2000; 查詢部門編號為10的平均工資 select deptno,avg(sal) from emp where deptno=10 group by deptno; select deptno,avg(sal) from emp group by deptno having deptno=10; 從優化的角度上來說,應該使用where查看全部
-
1 查詢工資平均值的三種方式 select sum(sal)/count(*),sum(sal)/count(sal),avg(sal) from emp; 2 查詢獎金的兩種方式 select sum(comm)/count(comm),avg(comm) from emp; NVL函數,是濾空函數,幾過濾空值 select count(*),count(nvl(comm,0)) from emp; 沒有數據的時候,用0代替查看全部
-
select deptno,wm_concat from emp group by deptno; wm_concat這個關鍵字是行轉列,在部門號對應的員工名字中,會把所有的員工姓名展示出來查看全部
舉報
0/150
提交
取消