Как посчитать уникальные значения в sql?
Нужно посчитать разные customer_id в PostgreSQL, пропустив NULL.
Дом, ремонт, стройка
Животные и питомцы
Учёба и образование
Фотография
Психология
Пока нет лидеров с лучшими ответами.
Ваш вопрос
Нужно посчитать разные customer_id в PostgreSQL, пропустив NULL.
Один столбец В PostgreSQL COUNT(DISTINCT customer_id) считает различные значения customer_id среди строк, попавших в запрос. NULL пропускается.
Пример SELECT COUNT(DISTINCT customer_id) AS customers FROM training.orders WHERE status = 'paid'; Один клиент с несколькими оплаченными заказами увеличит счетчик только на единицу. Клиент без оплаченного заказа не попадет в расчет.
Что проверить Если после JOIN число строк увеличилось, COUNT(DISTINCT customer_id) может сохранить нужное число клиентов, но не исправляет автоматически остальные показатели отчета. Для суммы продаж размножение строк по-прежнему опасно.
Отдельный случай Число разных пар клиент и магазин отличается от числа клиентов. Сначала определите единицу подсчета, затем выбирайте выражение.
Пока нет премиум-вопросов в подборке
Не нашли то, что искали?
Задайте свой вопрос
Лучший ответ
4o-mini
4o-mini
Как посчитать уникальные значения в sql?
Используйте SELECT COUNT(DISTINCT customer_id) FROM training.orders; в PostgreSQL. Запрос считает разные ненулевые значения customer_id, а не количество строк заказов. Повторяющийся идентификатор учитывается один раз, NULL не учитывается. Если нужно число разных сочетаний нескольких столбцов, постановку и выражение нужно изменить: подсчет одного customer_id этого не делает.