需要帮助解决此sql查询才能理解

kqhtkvqz  于 2021-06-26  发布在  Hive
关注(0)|答案(1)|浏览(302)

编写一个sql,为具有给定条件的employee数据集生成报告,如果平均年龄>35,则states值为ok,否则为notok数据集

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
svmlkihl

svmlkihl1#

使用此查询。

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;

注意:请自己努力理解和编写一个查询。

相关问题