0
我有兩個表,一個叫「用戶」,一個叫「項目」。我正在尋找來自users.eventdate字段在3天之內的用戶的ID列表。爲了讓事情更加複雜,我還希望看看items.startingdate是否在3天之內。複雜JOIN查詢在哪裏JOIN表可能沒有記錄
因此,如果users.eventdate在3天之內,或者現在3天內有item.startdate,則返回users.ID。用戶和項目之間的關係是users.ggProjectId和items.uID。
我目前有:
$strSQL = "SELECT users.ID, users.ggProjectId, users.timezone, users.ggTimestamp, users.slug, items.uID
FROM items
JOIN users ON users.ggProjectId = items.uID
WHERE (users.eventdate <= DATE(NOW() + INTERVAL 2 DAY)
AND users.eventdate >= DATE(NOW() - INTERVAL 2 DAY)) OR
(items.startingtime <= DATE(NOW() + INTERVAL 2 DAY)
AND items.startingtime >= DATE(NOW() - INTERVAL 2 DAY))
GROUP BY users.ggProjectId";
的問題是,如果沒有項目,爲用戶記錄的話,我沒有得到結果,即使我需要它,因爲EVENTDATE下降的時間內幀。我認爲這是殺死它的JOIN。
謝謝。這很好。 –