--第一個
SELECT emp.* FROM emp,(SELECT AVG(sal) s,emp.deptno FROM emp,dept WHERE emp.deptno=dept.deptno GROUP BY emp.deptno)a
WHERE emp.deptno=a.deptno AND emp.sal>a.s;
--第二個
SELECT * FROM emp a WHERE a.sal>(SELECT AVG(sal) FROM emp b WHERE a.deptno = b.deptno);
第一個是我自己寫的,第二個是官方的。第二個我覺得對於平均工資的求職每次都要計算一次,第一個我是直接取出來了一個副表,這樣我的平均值只取了一次,我自認為代碼比較復雜,但是對於計算機運行,效率上因該提高了。
你們是怎麼看的????
你用一個圖形化管理工具執行一下,一般都有顯示執行時間的,哪個執行的時間少哪個執行的效率就高,這個還需要討論研究的,看看不就知道了嗎?
如果回答對您有幫助,請采納