В настоящее время я пытаюсь найти лучший способ сделать условный подсчет в качестве псевдонима в DB2 for Iseries. Приведенные ниже значения представляют статусы заданий, в которых задание может быть создано, завершено и отменено, поэтому к любому заданию может быть прикреплено несколько кодов состояния.
Однако, для моего окончательного значения, я пытаюсь получить количество заданий, которые имеют только созданный статус, чтобы я мог показать, сколько еще открытых вакансий. В основном ищем случаи, когда счет для созданного дела = 1, но приведенный ниже сбой при '='
SELECT
COUNT(CASE A1.JOB WHEN = 'CREATED' THEN 1 END) AS CREATED,
COUNT(CASE A1.JOB WHEN = 'CANCELLED' THEN 1 END) AS CANCELLED,
COUNT(CASE WHEN A1.JOB 'CREATED' = 1 then 1 END) AS OPEN
FROM SCHEMA.TABLE A1;
выборке данных и результатов:
Job ID | Status_code
-------------------------
123 'CREATED'
123 'COMPLETED'
521 'CREATED'
521 'CANCELLED'
645 'CREATED'
Результаты:
JOB | CREATED | CANCELLED | OPEN
-------------------------------------------
123 1 0 0
521 1 1 0
645 1 0 1