SELECT k.condition,
SUM(IIf(AnimalType=3,1,0)) AS Carnivore,
SUM(IIf(AnimalType=4,1,0)) as Herbivore
From Animals a inner join knownconditions k on a.id = k.id
where a.id in (3, 11, 12)
AND (AnimalType=3 OR AnimalType = 4)
Group by a.id, k.id
Приведенный выше запрос выводит всех животных с определенным типом состояния.Например:
Condition | Carnivore | Herbivore
------------| ----------|-------------
Condition1 | 33 | 3
Condition2 | 2 | 4
Для примера рассмотрим, что в таблице knownconditions
есть запись, такая как ниже
ID | Condition
------|------------
3 | Condition3
К счастью, в таблице Animals
нет животныхимеет условие Condition3
.Поэтому в моем запросе выше даже нет списка Condition3
.
Как я могу изменить свой запрос так, чтобы полученные результаты были:
Condition | Carnivore | Herbivore
------------| ----------|-------------
Condition1 | 33 | 3
Condition2 | 2 | 4
Condition3 | 0 | 0