我有一个名为Route的表,用于存储所有可能的列车路线。
我需要编写一个查询来查找所有可能的Train_ID,以便Source_" NDLS"和目的地的Station_ID =" KNP"。
我的尝试:
Select t.Train_ID from Route as t,Route as d where t.Train_ID = d.Train_ID and t.Stop_Number < d.Stop_Number and t.Station_ID = "KNP" and d.Station_ID = "NDLS"
;
但是这会返回空集。
答案 0 :(得分:1)
select t.train_id
, case when t.station_id = 'NDLS' then t.station_id end as source
, case when t.station_id = 'KNP' then t.station_id end as destination
from route t;
这将在第一列中为您提供train_id,第二列将是train_id,其来源为&#39; NDLS&#39;第三列将作为&#39; KNP&#39;作为目的地。
对于源值为presnt的目标,您可能会为null,反之亦然。
我希望你没事。