如何从查询中获取工作日?

时间:2015-05-16 08:52:01

标签: sql sql-server-2008

如何在OrderH_dtmInitiated

之后获取工作日名称
SELECT 
    Convert(char(8), OrderH_dtmInitiated, 112) AS BookingDate,   
    --(To derived weekdays name from OrderH_dtmInitiated namely weekdays here)
    [OrderH_strEmailConfirmationSent], [OrderH_strEmail]  
FROM 
    [VISTAIT].[dbo].[tblOrderHistory] 
WHERE  
    OrderH_strEmailConfirmationSent IS NULL 
    AND OrderH_dtmInitiated >= (SELECT DATEADD(dd, 0, DATEDIFF(dd, 0, GETDATE()-1)))  
ORDER BY 
    Convert(char(8), OrderH_dtmInitiated, 112) 

2 个答案:

答案 0 :(得分:0)

您可以使用datename

Repeated column in mapping for collection:
test.model.Article.title.stringMap column: title_string_map

答案 1 :(得分:0)

SELECT 
Convert(char(8), OrderH_dtmInitiated, 112)as datebooking,
  Datename (weekday, OrderH_dtmInitiated) As NameOfDay,
   count(distinct OrderH_strCinemaId)as cinemassite,
   count(distinct OrderH_intID)as TotalBookingMade,   
   SUM(case when OrderH_strEmailConfirmationSent like 'Y' then 1 else 0 end) as OrderH_strEmailConfirmationSent,
   SUM(case when OrderH_strEmailConfirmationSent is NULL then 1 else 0 end) as EmailHavingNull   

FROM [VISTAIT].[dbo].[tblOrderHistory]
WHERE OrderH_dtmInitiated >= '2015-05-07'
GROUP BY Convert(char(8), OrderH_dtmInitiated, 112)
ORDER by Convert(char(8), OrderH_dtmInitiated, 112)