我有很多表記錄用戶在某個論壇上的操作,每個日誌事件都有它的日期。 我需要一個查詢,讓我所有的用戶在去年沒有活躍。 我有以下查詢(工作查詢):從多個表中找到最近的日期mysql
SELECT *
FROM (questions AS q
INNER JOIN Answers AS a
INNER JOIN bestAnswerByPoll AS p
INNER JOIN answerThumbRank AS t
INNER JOIN notes AS n
INNER JOIN interestingQuestion AS i ON q.user_id = a.user_id
AND a.user_id = p.user_id
AND p.user_id = t.user_id
AND t.user_id = n.user_id
AND n.user_id = i.user_id)
WHERE DATEDIFF(CURDATE(),q.date)>365
AND DATEDIFF(CURDATE(),a.date)>365
AND DATEDIFF(CURDATE(),p.date)>365
AND DATEDIFF(CURDATE(),t.date)>365
AND DATEDIFF(CURDATE(),n.date)>365
AND DATEDIFF(CURDATE(),i.date)>365
我在做什麼在查詢 - 加入所有表根據用戶id,然後檢查每個 日期列單獨看它是否被越來越那麼一年
我想知道是否有一種方法,使其更簡單,像找到最大所有日期間(最新的日期)和compering僅這一項爲當前日期
閱讀有關'UNION',而不是'JOIN',也學會格式化你的代碼,以便它是可讀與對部分讀者毫不費力,因爲它站在一堆亂七八糟的東西不值得解析,給出一個完整的真實答案!沒有人會投入更多的努力來回答問題,而不是你提出的問題,在這一點上,這很少。 – 2013-04-27 19:19:17