我想我可能會反思這一點,但是我在嘗試通過Oracle數據庫中的多個連接以及幾個where子句找到最大日期時遇到問題。我發現了很多簡單的最大查詢的例子,但沒有特別的例子。查詢工作正常,如果我添加一行來查找特定日期之上的所有記錄(只返回少數結果)。但是,我想自動從帳單表中獲取所有記錄的最新日期。這個數據庫有一個額外的表格,其中存儲了實際帳單數量,因此增加了另一個層次。Oracle SQL - 通過多個連接獲取Max Date
SELECT p.purchase_id, p.account_id, b.bill_date, bp.current_amount
FROM Purchases p
JOIN Bill_Purchases bp ON p.purchase_id = bp.purchase_id
JOIN Bills b ON bp.bill_id = b.bill_id
--NEED TO GET MOST RECENT DATE FROM BILL TABLE FOR EACH BILL
WHERE p.type != 'CASH'
AND bp.amount > '100.00'
AND p.status = 'Approved'
AND p.purchase_id IN (... list of purchases ...);
我已經嘗試在他們的最大功能做子查詢,但我沒有任何運氣。每個查詢返回與原始查詢相同數量的記錄。我將如何重新安排這個查詢來檢索所有必要的列和where子句,同時還將此限制爲僅最近一次收費的購買行爲?
發佈一些樣本數據+預期結果總是有幫助的。 – sstan
'從yourtable'選擇max(datefield)? –
你有沒有嘗試類似於:SELECT p.purchase_id,p.account_id,MAX(b.bill_date),bp.current_amount ... ... body ... ... GROUP BY SELECT p.purchase_id,p.account_id, bp.current_amount –