booking id booked_journey_info_id PNR
1 1000 PNR5000
1 1001 PNR5000
1 1002 PNR7000
1 1003 PNR7000
在上表中,我想为每个PNR检索一条记录。因此,对于上述情况,对于PNR - PNR5000查询应检索确切的一个registered_journey_info_id(1000或10001),对于PNR - PNR7000查询应检索确切的一个expected_journey_info_id(1002或10003)。
每个PNR我只需要1条记录。
答案 0 :(得分:1)
如果从组中获得booked_journey_info_id
无关紧要,您可以使用max()
聚合函数来提取最大ID:
SELECT MAX(booked_journey_info_id)
FROM myTbl GROUP BY PNR
基本上,聚合函数告诉从组中提取哪个值。
答案 1 :(得分:0)
答案 2 :(得分:0)
听起来你想要完整的行。
以下内容适用于任何数据库。
select t.*
from t join
(select pnr, max(booked_journey_info_id) as maxid
from t
group by pnr
) tpnr
on tpnr.maxid = t.booked_journey_info_id