Я пытаюсь написать запрос в Postgresql, который вытягивает набор упорядоченных данных и фильтрует его отдельным полем. Мне также нужно вытащить несколько других полей из одной и той же строки таблицы, но они должны быть исключены из отдельной оценки. Пример:
SELECT DISTINCT(user_id) user_id,
created_at
FROM creations
ORDER BY created_at
LIMIT 20
Мне нужно user_id
быть DISTINCT
, но все равно, уникальна ли дата created_at. Поскольку дата created_at включена в оценку, я получаю дубликат user_id
в моем результирующем наборе.
Кроме того, данные должны быть заказаны по дате, поэтому использование DISTINCT ON
здесь не является опцией. Он потребовал, чтобы поле DISTINCT ON
было первым полем в предложении ORDER BY
и которое не доставляет результаты, которые я ищу.
Как правильно использовать предложение DISTINCT
, но ограничивать его область видимости только одним полем при выборе других полей?