Здесь я собираюсь объяснить свой сценарий:
У меня есть следующие таблицы:
Table : Service_Type
Id | Service_Name | Service_Table_Name|
----------------------------------------
1 | FA | FA |
2 | TPA | TPA |
Table: Service_Mapping
Id | Service_Type_Id |
---------------------------
1 | 1 |
2 | 2 |
3 | 2 |
4 | 1 |
Table: FA
Id | Created_date| Qty |
-----------------------------
1 | 3/20/2012 | 20 |
2 | 4/22/2012 | 10 |
3 | 5/12/2012 | 15 |
4 | 6/3/2012 | 5 |
Table: TPA
Id | Created_date| Qty |
-----------------------------
1 | 5/20/2012 | 2 |
2 | 7/22/2012 | 10 |
3 | 1/12/2012 | 1 |
4 | 9/3/2012 | 5 |
Я хочу, чтобы вывод был таким:
Month | FA| TPA|
----------------
Jan 0 1
Mar 1 0
Apr 1 0
Jul 1 0
Sep 0 1
В выводе я хочу, чтобы месяц соответствовал полю Created_date таблицы FA и TPA. И в зависимости от месяца я хочу получить общую сумму, сколько FA и TPA происходит в месяц.
У меня есть вывод, например
FA | TPA |
--------------
3 | 2 |
SELECT
SUM(CASE WHEN Service_Type_Id = 1 THEN 1 ELSE 0 END) AS FA,
SUM(CASE WHEN Service_Type_Id = 2 THEN 1 ELSE 0 END) AS TPA
FROM Service_Mapping
Но теперь я хочу разделить их по месяцам, в которые они происходят. С даты подачи TPA и FA.