2017-10-21 125 views
-2

編寫一個SQL生成與給定條件的員工數據集的報告,如果平均年齡> 35則規定值notok數據集需要幫助解決這個SQL查詢來了解

id name age dept salary 

1 tt 51 it 4000 
2 kk 56 it 6000 
3 mm 45 sales 7000 
4 kk 25 sales 9000 
5 op 24 hr 4000 
6 op 24 hr 8000 

輸出

dept avgage states 
it 53.5 ok 
sales 35 ok 
hr 24 notok 
別的OK
+2

分享代碼和請清楚解釋您的問題... – GYaN

回答

0

使用此查詢。

SELECT a.dept, 
     a.avgage, 
     CASE 
     WHEN a.avgage >= 35 THEN 'ok' 
     ELSE 'notok' 
     END states 
FROM (SELECT dept, 
       Avg (age) avgage 
     FROM employee 
     GROUP BY dept) a 
ORDER BY avgage DESC; 

注意:請表現出一定的精力去理解,寫上自己的查詢。