在工作中,我經常必須找到每個外鍵的最大狀態。我大部分時間總是在連接上使用相關的子查詢來獲得正確的記錄。這是假定最高主鍵是最近的。這裏是一個小的演示
根據外鍵找到表的最大記錄的最佳方法是什麼?
select
c.plate_number, o.name
from
Car c
inner join Owner o
on o.owner_id = (
select max(owner_id)
from Owner
where owner_type = 'PRIMARY'
)
這是我用的,更不要說能夠把額外的條件在子查詢類型列大多數查詢非常快。我試圖使用NOT EXIST子句來確保沒有更高的記錄,但是找不到其他東西。有人可以提出更好的建議嗎?
什麼是汽車和業主之間的關係表? –
如果您想要最近的記錄,請使用日期時間字段。那麼你不必做出假設。 –
如果我正確理解你,你的意思是查詢只返回一行? –