Использование Group By при подсчете значений разных столбцов - PullRequest
0 голосов
/ 21 ноября 2018

Я пытаюсь сгруппировать по идентификатору задания, подсчитывая миллисекунды в каждой строке идентификатора задания.

Например, у меня 5 строк задания по 55 с разными миллисекундами, как .3, .5, 1,5, .3, .4.Я не хочу, чтобы отображалось 5 строк, только одна такая: 55 |3.0

Это то, как далеко я продвинулась, мне просто нужно немного подтолкнуть в правильном направлении.

SELECT job_ID, AVG_REC_TIME_MILLIS, count(AVG_REC_TIME_MILLIS)
FROM job_step js
GROUP BY js.JOB_ID;

Ответы [ 2 ]

0 голосов
/ 21 ноября 2018

Если вам нужно получить сумму всех миллисекунд для job_id, тогда

SELECT job_ID, sum(AVG_REC_TIME_MILLIS)
FROM job_step js
GROUP BY js.JOB_ID;

Если вам нужно количество шагов задания, рассмотрите следующий запрос

SELECT job_ID, count(AVG_REC_TIME_MILLIS)
    FROM job_step js
    GROUP BY js.JOB_ID;
0 голосов
/ 21 ноября 2018

Вам нужно SUM() вместо COUNT() & SELECT оператор должен содержать только столбцы, которые агрегируются, когда задействовано GROUP BY, поэтому AVG_REC_TIME_MILLIS не имеет никакого смысла.

Итак, удалили его из SELECT оператора:

SELECT job_ID, SUM(AVG_REC_TIME_MILLIS)
FROM job_step js
GROUP BY js.JOB_ID;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...