Amerikan ingilizcesi dil ayarlarında default değer 7 yani Pazar'dır.
SELECT @@DATEFIRST ile tanımlı değeri alabiliriz
SET DATEFIRST 1 (İlk günü Pazartesi olarak tanımlayabiliriz)
CREATE FUNCTION DayOfWeek(@date DATETIME)
RETURNS VARCHAR(9)
AS
BEGIN
DECLARE @defDayofWeek VARCHAR(10)
DECLARE @dofWeek int
SET @dofWeek= (@@DATEFIRST + DATEPART(weekday,@Date)-1)%7
SELECT @defDayofWeek=CASE @dofWeek
WHEN 0 THEN 'Pazar'
WHEN 1 THEN 'Pazartesi'
WHEN 2 THEN 'Salı'
WHEN 3 THEN 'Çarşamba'
WHEN 4 THEN 'Perşembe'
WHEN 5 THEN 'Cuma'
WHEN 6 THEN 'Cumartesi'
END
RETURN (@defDayofWeek)
END

SET @dofWeek= (@@DATEFIRST + DATEPART(weekday,@Date)-1)%7
ifadesinde ilk günün her zaman Pazartesi olmasını sağladık.
1 yorum:
merhaba,
bu kod parçacığı işime yaradı. teşekkürler, iyi çalışmalar...
Yorum Gönder