У меня есть таблица под названием Errorlogs
со следующими данными
+----+-------------+------------+
| ID | sps_Bereich | Date |
+----+-------------+------------+
| 10 | helpeu1 | 2020-07-31 |
+----+-------------+------------+
| 11 | helpeu2 | 2020-07-31 |
+----+-------------+------------+
| 12 | helpeu3 | 2020-07-31 |
+----+-------------+------------+
| 13 | helpeu3 | 2020-07-31 |
+----+-------------+------------+
| 14 | helpeu4 | 2020-07-31 |
+----+-------------+------------+
| 15 | helpeu3 | 2020-07-30 |
+----+-------------+------------+
| 16 | helpeu4 | 2020-07-30 |
+----+-------------+------------+
| 17 | helpeu4 | 2020-07-30 |
+----+-------------+------------+
| 18 | helpeu4 | 2020-07-30 |
+----+-------------+------------+
У меня есть другая таблица под названием Bereich
+----+---------+
| ID | Name |
+----+---------+
| 1 | helpeu1 |
+----+---------+
| 2 | helpeu2 |
+----+---------+
| 3 | helpeu3 |
+----+---------+
| 4 | helpeu4 |
+----+---------+
Я хотел бы сгруппировать по sps_bereich и Date и Я использую следующий запрос
select sps_bereich, [Date], count(*) as [Nr of errors] from [ErrorLogs]
where SPS_Bereich IN (
select Name from [Bereich]
)
group by SPS_Bereich, Date
order by date desc, SPS_Bereich asc
, он дает мне следующий результат.
+-------------+------------+--------------+
| sps_bereich | Date | Nr of errors |
+-------------+------------+--------------+
| helpeu1 | 2020-07-31 | 1 |
+-------------+------------+--------------+
| helpeu2 | 2020-07-31 | 1 |
+-------------+------------+--------------+
| helpeu3 | 2020-07-31 | 2 |
+-------------+------------+--------------+
| helpeu4 | 2020-07-31 | 1 |
+-------------+------------+--------------+
| helpeu3 | 2020-07-30 | 1 |
+-------------+------------+--------------+
| helpeu4 | 2020-07-30 | 3 |
+-------------+------------+--------------+
то, что я хотел бы, это включить sps_bereich
там, где нет данных. в этом случае я хотел бы добавить helpeu1,helpeu2
как 0
для даты 2020-07-30
Я хотел бы получить следующий результат.
+-------------+------------+--------------+
| sps_bereich | Date | Nr of errors |
+-------------+------------+--------------+
| helpeu1 | 2020-07-31 | 1 |
+-------------+------------+--------------+
| helpeu2 | 2020-07-31 | 1 |
+-------------+------------+--------------+
| helpeu3 | 2020-07-31 | 2 |
+-------------+------------+--------------+
| helpeu4 | 2020-07-31 | 1 |
+-------------+------------+--------------+
| helpeu1 | 2020-07-30 | 0 |
+-------------+------------+--------------+
| helpeu2 | 2020-07-30 | 0 |
+-------------+------------+--------------+
| helpeu3 | 2020-07-30 | 1 |
+-------------+------------+--------------+
| helpeu4 | 2020-07-30 | 3 |
+-------------+------------+--------------+
Я думал, что добавление Предложение IN должно возвращать мне все значения, но это не так.
вот SQLFiddle .