子查询基于具有一周范围数据的两个日期列



>我在表格中有两个日期列,一个用于发布问题的日期,另一个用于回答。例如,每当提出一个新问题时,其日期都存储在q_date列中,每当有人回答该问题时,其日期都存储在a_date列中。现在我希望在一周内提出所有问题,并在一周内回答所有问题。任何人都可以使用联接或子查询向我解释查询吗

您可以尝试以下查询:

SELECT *
FROM yourTable
WHERE
    q_date >= DATE(NOW()) - INTERVAL 7 DAY OR
    a_date >= DATE(NOW()) - INTERVAL 7 DAY

这将返回与过去 7 天内发生的问题或答案相对应的所有记录。

您可以使用如下查询:

 Select * from q_ans where DATEDIFF(WEEK,q_ans.q_date,q_ans.a_date) = 1

这将给出回答日期在问题日期的一周范围内的所有记录

您需要为 BETWEEN 子句添加 AND 条件。你可以试试

WHERE q_ans.a_date BETWEEN date_sub( NOW(), INTERVAL 1 WEEK) AND NOW()

最新更新