Как совместить два запроса и выводить результат по горизонтали - PullRequest
0 голосов
/ 16 октября 2019

У меня есть две таблицы, в которых записаны ежемесячные допуски и OT-допуски, в обеих таблицах есть столбцы Department и Track. Мне нужен отчет, в котором есть все отделы, но отдельные столбцы Track DL, IDL

Я могу сделать это только один трек, но я не могу объединить с колонкой трека в одном запросе. Это мой код

;WITH sums AS 
(
   SELECT
      sum(Monthly.Pay) as Total_Monthly,OT.MealAllowance_OT,Monthly.Dept_Id,Monthly.Dept_Name

   FROM
     [dbo].[SPCM_TX_MonthlyAllowance] as Monthly
     left join (  select Period,sum(MealAllowance_OT) MealAllowance_OT,Dept_Id
   from [dbo].[SPCM_Cal_OTLog]
   where Track = 'IDL'
   group by Period,Dept_Id) OT
   on Monthly.Dept_Id = OT.Dept_Id  
   where Monthly.Track = 'IDL'
   GROUP BY
      Monthly.Dept_Id, Monthly.Dept_Name,MealAllowance_OT,Monthly.Track
)
SELECT   
   Dept_Id,Dept_Name,Total_Monthly,MealAllowance_OT,Total_Monthly+MealAllowance_OT AS 'GrandTotal' 
FROM 
   sums  
   order by GrandTotal desc

Monthly_Table

--------------------------------------------------------------------
EMP_ID  |  Track  |  Period      |  Pay  |  Dept_Id  |  Dept_Name  |
--------------------------------------------------------------------
1           DL       2019-10-10     400       1A           A        
2           IDL      2019-10-10     400       1A           A
3           DL       2019-10-10     400       1B           B
4           IDL      2019-10-10     400       1B           B
--------------------------------------------------------------------

OT_Table


EMP_ID  |  Track  |  Period     |  OTHrs| Meallowance_OT  | Dept_Id | Dept_Name | Day_Type
--------------------------------------------------------------------------------------------------
1           DL       2019-10-10     5         18             1A           A         Working_day
2           IDL      2019-10-10     5         18             1A           A         Weekend
3           DL       2019-10-10     10        18             1B           B         PublicHoliday
4           IDL      2019-10-10     12         0             1B           B         Working_day
--------------------------------------------------------------------------------------------------

Результат enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...