SELECT
MAX(id) id,
po_nbr
FROM
temp
GROUP BY
po_nbr
関連付けられた日付を取得するには、次のようにします (これは連続した ID を意味することに注意してください):
SELECT
temp.id,
temp.po_nbr,
temp.crt_ts
FROM
temp
INNER JOIN (
SELECT MAX(id) id FROM temp GROUP BY po_nbr
) latest ON latest.id = temp.id
連続した ID がない場合は、次のようになります:
SELECT
MAX(temp.id) id,
temp.po_nbr,
temp.crt_ts
FROM
temp INNER JOIN (
SELECT MAX(crt_ts) crt_ts, po_nbr
FROM temp i
GROUP BY po_nbr
) latest ON latest.crt_ts = temp.crt_ts AND latest.po_nbr = temp.po_nbr
GROUP BY
temp.po_nbr,
temp.crt_ts
GROUP BY
po_nbr
ごとに 2 つの同じ日付がないことが保証されている場合は、省略できます グループ。
crt_ts
のインデックス および po_nbr
最後のクエリで役立つ場合は、結合されたインデックスを 1 つ作成するのが最適です。