Выбор отдельных значений из трех столбцов с максимум четверти, где есть дубликаты
Вопрос
У меня есть таблица с одним числовым значением (n) и тремя строковыми значениями (a, b, c). Как запросить эту таблицу, чтобы получить только различные значения (a, b, c) и, если есть дубликаты, взять максимум из соответствующего набора из n значений?
Решение
select max(n), a, b, c
from mytable
group by a, b, c
Другие советы
Используйте GROUP BY
:
select a, b, c, max(n)
from table
group by a, b, c;
Это покажет только уникальные или отличные наборы a, b, c
и покажет максимальное n
, найденное в этом наборе.
MAX
- агрегатная функция, предназначенная для использования с MIN
. Другие потенциально полезные агрегатные функции включают AVERAGE
, COUNT
и <=>.
Не связан с StackOverflow