簡體   English   中英

根據最大日期獲取一些值(兩個表之間的查詢)

[英]Get some value based on the max date (query between two tables)

我有兩個表,我想根據某個最大日期獲得一個值。 這是表的結構:

項目(ItemId,名稱)

ItemData(ItemDataId,ItemFK,發票,EntryDate) -ItemFK是Items表中ItemId的外鍵

我所知道的只是該項目的名稱。 我想獲得基於EntryDate(和名稱)的最新發票。 我首先需要根據名稱獲取itemid,然后根據itemid但僅獲取最后一個發票(因此使用max(enteydate)。如何使用innerjoin(或其他一些sql查詢)來做到這一點?

您聯接到派生表,該表是帶有別名的子查詢。

select yourfields
from someTable join otherTablesMaybe on something
 join (
select id, max(datefield) maxDate
from someTable
where whatever
group by id ) derivedTable on someTable.id = derivedTable.id
and someTable.datefield = maxDate
where whatever

兩者where whatevers都應相同。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM