如何在MySQL上的單個查詢中重新構造這兩個查詢?SQL:如何選擇其他表上每個記錄的最近過去日期的記錄
SELECT * FROM tvnetwork
//this query gives me a list of TV networks
但網絡通常更改名稱和徽標,所以對於每個檢索到的電視網絡:
SELECT name, logo FROM tvnetworkinfo
WHERE id = $tvnetwork.id
AND date_since < NOW()
ORDER BY date_since desc LIMIT 1
//this one gives me the most recent logo and name for the network
我故意留出下一個名稱/標識的變化。例如。我想要「NatGeo」而不是舊的「國家地理」,但我也想要「SciFi」而不是尚未實施的「SyFy」。
我想在單個查詢中檢索所有內容。 ¿有沒有辦法做到這一點?
你確定你真的想要其他記錄嗎?這意味着每個網絡都有兩條記錄。也許你想要每個網絡的最舊或最新的記錄? – 2010-09-20 21:34:03
我需要tvnetworkinfo的最新(但不是未來)記錄,以及相應的tvnetwork記錄。 – 2010-09-21 03:28:05