2012-09-11 5 views
3

날짜의 값 집합이 어떤 달의 1 또는 3 또는 5 번째 월요일에 속하는지 확인하고 싶습니다. SQL Server 2008에서이 작업을 수행하는 방법은 무엇입니까? 쉽게 조건의 몇 가지로 표현 될 수달에 대체 주말을 받으십시오.

답변

3
좋아

:

WHERE 
    DATEPART(weekday,DateToCheck) = DATEPART(weekday,'20120910') AND 
    (
     DATEPART(day,DateToCheck) between 1 and 7 OR 
     DATEPART(day,DateToCheck) between 15 and 21 OR 
     DATEPART(day,DateToCheck) between 29 and 31 
    ) 

(나는 당신의 날짜 설정이 서버에있는 알 필요가 없도록 내가 위와 DATEPART(weekday,... 확인을 - 난 그냥

2

이 시도)는 "알려진 좋은"월요일에 대한 값을 확인하고 있습니다 : 영어 언어 설정을 가정

SELECT * 
FROM <your_table> 
WHERE datename(weekday,<date_col>)='Monday' 
AND  DATEPART(day,<date_col>)/7 in (0,2,4) 
+0

합니다. –

+0

@Damien_The_Unbeliever : 그건 사실이야 .. 질문은 다르게 말하지 않았다 .. :) –

관련 문제