Mysql SQL子查询联接
我有下列表格Mysql SQL子查询联接,mysql,sql,join,Mysql,Sql,Join,我有下列表格 Table 'Flight' ( number int, dest VARCHAR(4), arrTime Date, Foreign Key(dest) references Airport(code) ) 及 假设我有以下飞行数据 'Flight' 2,'TX','10/5/2015 1:32' 3,'NY','10/5/2015 4:20' 1,'TX','10/5/2015 1:20' 4,'NY','10/5/2015 4:21' 机场呢 'TX' 'NY'
Table 'Flight' (
number int,
dest VARCHAR(4),
arrTime Date,
Foreign Key(dest) references Airport(code)
)
及
假设我有以下飞行数据
'Flight'
2,'TX','10/5/2015 1:32'
3,'NY','10/5/2015 4:20'
1,'TX','10/5/2015 1:20'
4,'NY','10/5/2015 4:21'
机场呢
'TX'
'NY'
对于每个机场,我希望检索连续到达机场的所有航班号,因此它与我为航班表提供的数据非常相似。我正在做一个子查询来完成这项工作,但我无法得到所需的输出
1,'TX','10/5/2015 1:20'
2,'TX','10/5/2015 1:32'
3,'NY','10/5/2015 4:20'
4,'NY','10/5/2015 4:21'
我已经尝试了以下方法,但是我无法得到正确的输出
SELECT Airport.code, Timez
FROM Flight JOIN Airport
ON Flight.dest = Airport.code
ORDER BY DATE(arrTime) DESC as Timez
非常感谢您的帮助我想您希望这能得到您所指示的输出:
SELECT Flight.number n, Airport.code c, Flight.arrTime t
FROM Flight JOIN Airport
ON Flight.dest = Airport.code
ORDER BY c, t DESC
无需转换arrTime
字段,因为它已在日期
但是,由于日期格式的
arrTime
字段没有保留完整的日期和时间,因此无法获取完整的日期和时间。您需要一个DATETIME或TIMESTAMP字段来代替它。使用按机场、航班、到达时间排序
这将对同一机场的所有航班进行排序,然后在这些组中按时间进行排序
不要使用DESC
,这样会使它们按相反的时间顺序排列。选择Airport.code、Flight.arrTime
从班机到机场
ON Flight.dest=Airport.code
按机场订购。代码,航班。到达时间ASC先按机场订购,然后按到达时间订购。所以它看起来像:按机场订购。代码,到达时间
SELECT Flight.number n, Airport.code c, Flight.arrTime t
FROM Flight JOIN Airport
ON Flight.dest = Airport.code
ORDER BY c, t DESC