我有兩個表:使用查詢結果作爲參數的另一個查詢
表項 - >的itemId - > ITEMNAME
表發票 - > InvoiceId - > InvoiceNum - > InvoiceDate - > ItemId 等(不相關)。
對於不同的項目,我需要找到最新(也是最新)的發票日期。 到目前爲止,我創建了第一個不同的第一個查詢,然後,對於每個結果我在第二個表上運行一個新的查詢(頂部1按日期desc排序)
它的工作,但它需要永遠(我有超過10000個項目)。 我使用asp classic和訪問,但我很確定問題與SQL有關。
我嘗試了條款WHERE ... IN
,但查詢輸出所有發票日期,而不僅僅是最新的發票日期。
任何幫助? Thx提前!
我知道我一直非常通用。 這裏是我嘗試使用SQL指令:
SELECT table1.id,table3.name,table1.name,table2.trans_num,MAX(table2.transaction_date_h)AS MaxDitransaction_date_h,table2.amount_amt FROM表3 INNER JOIN(table1 INNER JOIN table2 ON table1.id = table2.item_id)ON table3.id = table1.preferred_vendor_id GROUP BY table1.id,table3.name,table1.name,table2.trans_num,table2.amount_amt ORDER BY table3。 name,table1.name,table2.trans_num,Max(table2.transaction_date_h)DESC;
如果我運行此查詢,結果是整個記錄集。 至於說,我想爲每個不同的table1.id