Есть три таблицы:
1. Таблица с текстами.
id | text | text_last_update
-----------------------------------
1 | бла-бла-бла | 2019-03-19
-----------------------------------
2. Таблица с версиями текста из предыдущей таблицы. При добавлении новой версии обновляется так же поля таблицы 1 - text и text_last_update
id | text_id | text_version | date
------------------------------------------
1 | 1 | бла | 2019-03-16
------------------------------------------
2 | 1 | бла-бла | 2019-03-18
------------------------------------------
3 | 1 | бла-бла-бла | 2019-03-19
------------------------------------------
3. Таблица с датами просмотра текстов пользователями. Даты просмотра текста перезаписываются при повторном просмотре текста. Если пользователь не просматривал текст, то записи нет.
id | user_id | text_id | date
-----------------------------------
1 | 1 | 1 | 2019-03-16
-----------------------------------
Как мне получить все данные из таблица 1, но так чтобы к ним добавилась последняя просмотренная пользователем версия текста из таблицы 2 на основе данных таблицы 3, учитывая, что записи о последнем просмотре тему может и не быть?