我有2個表,使用內部連接來查詢它們。MySQL Help:SELECT table2.id WHERE ... table1.date最大
SELECT COUNT(table2.id)
FROM table2
INNER JOIN table1 ON table2.relazioneid = table1.id
WHERE table1.date > ? AND table1.date < ?
它計算兩個日期之間的報告條目的ID。表1保存有關報告(日期,組ID等)的信息,表2保存報告中的條目。
我想查詢幾乎完全一樣的,除了它只在這兩個日期之間選擇具有最新日期的報告中的id。
任何人都可以幫忙嗎?我無法理解MAX(日期)類型的查詢 - 我得到的所有數據都是每個ID的計數,也是最大日期,而不僅僅是來自最大日期的那些ID。
感謝,
我一直在想也許一個嵌套的SQL查詢 - 你可以做到這一點?我可以找到關於谷歌的參考,但不能讓它開始工作......類似的東西:
SELECT COUNT(table2.id)
FROM table2
INNER JOIN table1 ON table2.relazioneid = table1.id
WHERE table1.date > ? AND table1.date < ? AND
(
SELECT MAX(date)
FROM table1
WHERE date > ? AND date < ?
)
不能得到那個工作,雖然,當我嘗試測試它在phpMyAdmin,它踢我出了一個錯誤,告訴我我的用戶沒有SELECT權限。奇怪,因爲這是一個測試服務器,我以root身份登錄。
你能提供兩個表的結構和哪些信息你想從兩個表中檢索?這將使提供有效的示例代碼變得更加簡單。 – 2009-04-19 17:19:12