DMityaev
@DMityaev
системный аналитик

Возможно ли в одной выборке вывести несколько COUNT`ов с условием?

Можно ли в PL SQL сделать что-то типа этого:

Select
a,
b,
c,
COUNT (D ****** WHERE D = 'tino'),
COUNT (D ****** WHERE D = 'tipo'),
COUNT (D ****** WHERE D = 'tiko')

FROM
TABLE A
JOIN TABLE B ON a.id = b.id

GROUP BY ******

Вообще, может ли COUNT как-то с условием работать?
Или какие есть альтернативные способы?

Мне нужно в одном отчете вывести несколько количеств, суммированных по условиям (суммировать только с кодами 'tino', 'tipo' и 'tiko')
  • Вопрос задан
  • 693 просмотра
Пригласить эксперта
Ответы на вопрос 1
erge
@erge
Примус починяю
а взять и просто написать, вместо того чтобы спрашивать?
COUNT не считает NULL
SELECT
    key,
    count(DECODE(value, 'tino',1, NULL)) AS tino,
    count(DECODE(value, 'tipo',1, NULL)) AS tipo,
    count(DECODE(value, 'tiko',1, NULL)) AS tiko
  FROM table1
  GROUP BY key


см. на sqlfiddle
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
28 мар. 2024, в 21:17
5000 руб./за проект
28 мар. 2024, в 20:46
150000 руб./за проект
28 мар. 2024, в 20:37
50000 руб./за проект