← Все вопросы

Как убрать дубликаты из результата запроса (DISTINCT)?

Задан 12 месяцев назад621 просмотров3 ответа
11

В выборке городов из users один и тот же город повторяется много раз. Как оставить только уникальные значения?

3 ответа

16

SELECT DISTINCT city FROM users;

9

DISTINCT действует на ВСЕ перечисленные столбцы сразу, а не на один. То есть SELECT DISTINCT city, country оставит уникальные ПАРЫ (город, страна), а не уникальные города. Это частая путаница.

Denis Fadin о, а я думал он только к первому столбцу относится, спасибо · 11 месяцев назад
5

Если хочешь не просто список уникальных, а ещё и посчитать сколько раз каждый встречается — тут уже не DISTINCT, а GROUP BY city + COUNT(*). По сути группировка и есть «продвинутый distinct».

Ваш ответ

Войдите, чтобы ответить на вопрос.
Поддержать проект