Я создаю несколько записей документов в базе данных, и каждый документ может иметь несколько версий. Каждая новая версия - это новая запись в базе данных. Чтобы сгруппировать версии документов вместе, я назначаю им общий уникальный идентификатор groupId
.
Я пытаюсь получить из базы данных последнюю версию документа, но я также хочу, чтобы исходный документ был создан на дату:
documents table
- id
- group_id
- version
- created_at
пример записей:
id: 1, group_id: 'xyz', version: 1, created_at: date
id: 2, group_id: 'xyz', version: 2, created_at: date
id: 3, group_id: 'xyz', version: 3, created_at: date
etc...
Я думал о том, чтобы использовать либо отдельный, либо порядок, а затем добавить ограничение 1 для запроса, чтобы просто получить 1 результат:
SELECT * FROM documents
WHERE group_id='xyz'
ORDER BY 'created_at' DESC
LIMIT 1
но как я могу также включить дату create_at исходного документа в дополнение (или вместо даты последней версии созданной_at?)
Я знаю, что могу перезапустить запрос с помощью ORDER BY 'created_at' ASC LIMIT 1
, но есть ли способ сделать все это в одном запросе?