У функции count
есть еще одна форма - count(DISTINCT выражение)
. При такой форме записи функция вернет количество уникальных значений, при этом NULL
значения по прежнему не учитываются. Например:
SELECT *
FROM table1
value |
---|
1 |
2 |
2 |
2 |
3 |
3 |
NULL |
NULL |
SELECT count(value) AS count_value,
count(DISTINCT value) AS count_distinct_value
FROM table1
count_value | count_distinct_value |
---|---|
6 | 3 |
Уникальными значениями value
таблицы table1
являются 1, 2 и 3.