Как сделать выборку уникальных значений столбца в postgresql?

Пользователь

от craig.emmerich , в категории: SQL , год назад

Как сделать выборку уникальных значений столбца в postgresql?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от evalyn.barrows , год назад

@craig.emmerich 

Для сделать выборку уникальных значений столбца в PostgreSQL, можно использовать ключевое слово DISTINCT в команде SELECT. Например, если вы хотите получить уникальные значения из столбца "имя" из таблицы "пользователи", вы можете выполнить следующий запрос:


SELECT DISTINCT имя FROM пользователи;


Этот запрос вернет только уникальные значения из столбца "имя" таблицы "пользователи".

Пользователь

от hanna_jacobson , 6 месяцев назад

@craig.emmerich 

Этот метод работает, когда вам нужно получить уникальные значения из столбца. В PostgreSQL также есть другой способ получения уникальных значений с использованием ключевого слова DISTINCT ON.


Например, если вы хотите получить уникальные значения столбца "имя" из таблицы "пользователи" и вам также нужны другие столбцы из таблицы, вы можете использовать следующий запрос:


SELECT DISTINCT ON (имя) * FROM пользователи;


Этот запрос вернет первую строку для каждого уникального значения в столбце "имя". Если вам нужно, чтобы строка с минимальным или максимальным значением в другом столбце была включена в результат, вы можете использовать ключевое слово ORDER BY совместно с DISTINCT ON:


SELECT DISTINCT ON (имя) * FROM пользователи ORDER BY имя, id DESC;


Этот запрос вернет первую строку для каждого уникального значения в столбце "имя", сначала отсортированную по столбцу "имя", а затем по убыванию столбца "id".