我需要一个非常快速的查询帮助

问题描述:

我现在正在参加考试,无法正常工作。我需要一个非常快速的查询帮助

问题有2位。我为第一部分得到了答案。

SELECT 
airport_id "Airport id", 
crew_type "Crew type",  
min(crew_age) "Minimum age", 
Round(avg(crew_age),0) "Average age", 
max(crew_age) "Maximum age" 

FROM crew 
GROUP by crew_type 

问题在第二部分。第二部分是我需要根据airport_id字段获取机场名称。我这样做:

SELECT 
crew.airport_id, 
crew_type "Crew type",  
min(crew_age) "Minimum age", 
Round(avg(crew_age),0) "Average age", 
max(crew_age) "Maximum age", 


airport.airport_name 

FROM crew, airport 
WHERE 
crew.airport_id = airport.airport_id 
GROUP by crew.crew_type 

它的工作原理,但airport_id与airport_name不匹配。 Airport_id和airport_name字段都是相同的。

+8

来自*的认证人群。你在开玩笑吧? – ptomli

+2

当然,你前面的SQL引擎正在为你提供一个非常有洞察力的错误消息。 – sarnold

+0

愚蠢的我。好。排序。这是我唯一不能做的问题。 – emre

当您将所有字段组合在一起时必须是组的一部分,或者它们必须与聚合函数(如max,avg)一起使用。

SELECT crew.airport_id, crew_type “船员类型”,
分钟(crew_age) “最小年龄”, 回合(AVG(crew_age),0) “平均年龄”, MAX(crew_age)“最大年龄”,

airport.airport_name

FROM机组人员,机场 WHERE crew.airport_id = airport.airport_id GROUP由crew.airport_id,crew.crew_type,airport.airport_name