Мне нужно выбрать самую последнюю дату загрузки для разных документов для каждого идентификатора, и я хотел бы, чтобы для одного идентификатора была только одна строка.
Что я сейчас делаю:
SELECT DISTINCT id,
tree_date,
sun_date
FROM
(SELECT id,
max(CASE
WHEN doc_name LIKE 'tree%' THEN upload_date
END) OVER (PARTITION BY id ORDER BY id) tree_date,
max(CASE WHEN doc_name LIKE 'sun%' THEN upload_date
END) OVER (PARTITION BY id ORDER BY id) sun_date
FROM documents
WHERE doc_name LIKE 'tree%'
OR doc_name LIKE 'sun%' )
Этот запрос работает и дает мне желаемые результаты, но я не думаю, что выбираю максимальную дату загрузки документа для идентификатора наиболее эффективным способом.Может кто-нибудь предложить более эффективный способ предпочтительнее без четких, поскольку я считаю, что это значительно замедляет запрос.
Любая помощь приветствуется.Пожалуйста, дайте мне знать, если вам нужна дополнительная информация.