我正在使用設計得非常好的數據庫,它在大多數表中都不包含主鍵。 由於這個原因,我需要調整一些東西來從數據庫中檢索我想要的信息。如何檢索此數據庫中重複項的最新數據?
我有第一個名爲Customer的表,它包含一個名爲customer_id的唯一標識符。它還包含Account_ID。它包含更多我現在不需要的數據。
我正在使用的第二個叫做Contact的表格也包含Account_ID,但它不是唯一的,它是我可以用來將 與其他表格鏈接的唯一數據。爲了解決這個問題,它不是唯一的(出於某種原因,添加了具有相同Account_ID值的新行,而不是修改一個)。 我想檢索插入到數據庫中的最新數據,其中重複項在Account_ID上。幸運的是,這個表中有一個Time_stamp值 。我想我可以利用這一點對我有利。
我應該補充說這是一個文件製作器數據庫,所以當我嘗試了一些我已經在這裏找到的東西時,它似乎並不總能奏效,我假定出於這個原因。
這是我到目前爲止有:
$sql = "SELECT table1.Customer, table1.Account_ID, table2.Account_ID, table2.Phone"
. "FROM Customer AS table1"
. "JOIN Contact AS table2 ON table1.Account_id = table2.Account_id";
這個查詢工作,但不排除重複或尋找在聯繫表中的最新ACCOUNT_ID條目。
謝謝您的回答,但它似乎不工作(給錯誤)。當我從查詢中刪除了這個:max(table2.Account_ID),但並不是我想要的方式。我似乎注意到MAX給我的問題,好像我不能使用它。有沒有辦法解決它? – Exn
如果沒有分組,則不能使用聚合函數。 – Koryu