我有一张table如下:
year int
month int
dayofmonth int
deptime int
uniquecarrier string
flightnum int
arrdelay int
origin string
dest string
我想去目的地机场(dest),那里的平均到达延误(arrdelay)是最高的。
我想避免像现在这样的粗俗的东西:
select dest, avg(arrdelay) as average from flightdelays GROUP BY dest ORDER BY average DESC LIMIT 1;
我试过各种各样的方法,但到目前为止都没用。我可以得到最大平均时间:
select MAX(avgtime) from (SELECT dest as destination, avg(arrdelay) as avgtime FROM flightdelays GROUP BY dest) as maxdelay;
但是修改它是行不通的-它只是不允许我从上面选择目的地。
有什么想法吗?
谢谢
1条答案
按热度按时间ecr0jaav1#
你的第一个问题是什么意思?你只想要“dest”而不是平均值吗?
如果是这样,请考虑使用其他选择:
hive不允许将“groupby”或“order by”与select语句中没有的字段一起使用,但mysql示例允许这样做。