Я пытаюсь заставить предложение Order By работать для запроса, но оно не работает должным образом.Моя цель заключается в следующем
- Поиск определенного идентификатора пользователя
- Поиск только самой последней даты почты для двух разных идентификаторов документов (55 и 57)
- Упорядочите результаты поиска по дате отправки почты, чтобы любая дата отправки почты отображалась в верхней части списка.
- возвращает только первую строку, которая должна быть самой последней отправленной по почте буквой для любого из документов.Перечисленные идентификаторы
Проблема, с которой я сталкиваюсь, заключается в том, что предложение ORDER BY
не работает.Пользователь, с которым я его тестирую, имеет документ с doc_def_id
из «55» и mailed_date
от 22.06.2008, а также документ с doc_def_id
из «57» и mailed_date
из 07/ 08/2018.Насколько мне известно, он должен дать мне doc_def_id
из "57", потому что он имеет более позднюю дату отправки почты, но, похоже, игнорирует предложение ORDER BY
и дает мне первый результат (как если бы не было предложения ORDER BY
) не смотря ни на что.
код:
SELECT
ual.user_id,
ual.account_id,
dr.mailed_date,
dr.doc_def_id
FROM doc_request dr
JOIN user_account_link ual
ON dr.account_id = ual.account_id
WHERE
ual.user_id = '123456'
AND dr.mailed_date = (
SELECT Max(dr.mailed_date)
FROM doc_request
WHERE ual.user_id = '123456'
AND dr.doc_def_id IN ('55','57')
)
AND ROWNUM <= 1
ORDER BY dr.mailed_date DESC;