0
我打破了我的頭試圖修改此查詢(thx sgeddes)以便 不僅從db_events.events字段獲得結果,而是將其與某些db_system結合使用。設備領域修改MYSQL查詢以獲得兩個表之間的JOIN
SELECT e.*
FROM db_events.events e
JOIN (
SELECT Max(id) MaxId, device_id
FROM db_events.events
GROUP BY device_id) e2 on e.Id = e2.MaxId AND e.device_id = e2.device_id
WHERE e.device_id IN (
SELECT device_id
FROM db_system.devices
WHERE vendor = 1)
ORDER BY e.id DESC
我怎樣才能得到它不重複的子查詢:
SELECT *
FROM db_system.devices
WHERE vendor = 1
我需要得到db_system.devices.brand
和db_system.devices.model
與最終結果加盟, 我試圖修改它一步一步來,我嘗試了臨時表,我懷疑它應該是簡單的,但我一直沒有能夠做到,當然非常感謝你...
我想這就是他想要的東西,結果還是一樣 - 我剛纔看到他的評論對我的以前的回答 - 謝謝@JW! +1 – sgeddes 2013-02-19 13:50:49
@ JW,@ sgeddes,夥計們,我試圖理解它,你如何應用邏輯來解決它?似乎在內部解決......嗯,非常感謝。 – user1913878 2013-02-19 14:21:24
子查詢分別爲表db_events.events中的每個'device_id'獲取最大'ID'。子查詢的結果然後在表'db_events.events'(*自排連接*)上重新連接,只要它匹配'MaxID'和'device_id'。然後,表部分結果再次在表db_system.devices中加入,以便您可以獲取記錄具有相同'device_id'的其他值 – 2013-02-19 14:27:10