получить старую дату для содержимого и проверить вторую таблицу для одних и тех же данных

В рамках проекта, над которым я работаю, я работал над сайтом, на котором пользователи могут добавлять и редактировать контент на разных страницах.

В настоящее время, когда кто-то добавляет раздел контента на страницу, он добавляется в таблицу «content» с столбцом с измененной датой и уникальным столбцом идентификатора. Однако, когда кто-то идет и редактирует эту запись, я беру информацию для этого ContentID в таблице «content» и создаю новую запись в таблице «changehist» с этой информацией (для отслеживания истории изменений для записей контента). после этого я затем обновляю таблицу содержимого новым контентом и датой его редактирования.

Таблица My Content содержит следующие столбцы:
ContentID, Heading, Content, DateModified, UserID

Таблица ChangeHist содержит следующее:
HistID, ContentID, Heading, Content, DateModified, UserID

То, что мне было предложено сделать, - это раздел, который показывает недавно добавленный контент (за последние 3 недели), но не последний обновленный контент (контент, добавленный год назад, но обновленный на прошлой неделе). В настоящее время я использую следующий запрос:

SELECT content.* 
FROM content 
WHERE 
   (NOT EXISTS 
      (SELECT 1 
      FROM changehist 
      WHERE  changehist.ContentID = content.ContentID)) 
AND content.DateModified > NOW() - INTERVAL 3 WEEK 
ORDER BY content.DateModified DESC

Моя проблема здесь в том, что если контент добавлен 3 часа назад и был отредактирован 2 часа назад, с моим текущим запросом, запись не отображается в результатах MYSQL.

Есть ли способ получить эту информацию в одном запросе или мне нужно использовать два отдельных запроса, по одному на каждую таблицу, и объединить два результата вместе в php?

mysql,

0