我正在尝试在SQL Server报表生成器中创建一个表,该表显示一个月内打开和关闭的票证数量,我想出了一个部分完成我想要的查询:
SELECT DISTINCT COUNT(incident_id)AS TicketsOpened,Datepart(Year,open_time)AS InYear,Datepart(MONTH,open_time)AS YrMonth,DateName(MONTH,open_time)AS MnName,'Open'as Tickets
FROM HROHelpDeskSD
WHERE(Datepart(Year,open_time)=(YEAR(GETDATE())))
GROUP BY Datepart(Year,open_time),Datepart(MONTH,open_time),DateName(MONTH,open_time)
UNION
SELECT DISTINCT COUNT(incident_id)AS TicketsClosed,Datepart(Year,close_time)AS CloseYear,Datepart(MONTH,close_time)AS YrMonth,DateName(MONTH,close_time)AS MnName,'Closed'as Tickets
FROM HROHelpDeskSD
WHERE(Datepart(Year,close_time)=(YEAR(GETDATE())))
GROUP BY Datepart(Year,close_time),Datepart(MONTH,close_time),DateName(MONTH,close_time)
YrMonth的订单
产生:
TicketsOpened InYear YrMonth MnName门票
1879 2017年1月1日开放
1855 2017年1月1日结束。
但后来我感到困难,试图获得需要放在桌子上的数字。如果票证是打开的,那么我需要将相应的号码放在票证已打开字段中,并将相同的号码放入票证已关闭字段中。任何建议将不胜感激。
谢谢, 唐纳德