Календарные выборки

Скрипты, запросы.

Календарные выборки

Сообщение invisib1e » 29 июн 2011, 17:26

Сегодня смастерил, интересно есть ходы короче?... :)
Выборка "День недели"

Код: Выделить всё
SELECT CASE
      WHEN DATEPART(WEEKDAY,GETDATE()) = 1 THEN 'ВС'
      WHEN DATEPART(WEEKDAY,GETDATE()) = 2 THEN 'ПН'
      WHEN DATEPART(WEEKDAY,GETDATE()) = 3 THEN 'ВТ'
      WHEN DATEPART(WEEKDAY,GETDATE()) = 4 THEN 'СР'
      WHEN DATEPART(WEEKDAY,GETDATE()) = 5 THEN 'ЧТ'
      WHEN DATEPART(WEEKDAY,GETDATE()) = 6 THEN 'ПТ'
      WHEN DATEPART(WEEKDAY,GETDATE()) = 7 THEN 'СБ'
END
invisib1e
The Admin
 
Сообщения: 55
Зарегистрирован: 16 мар 2010, 22:28
Откуда: Russia, Moscow
Благодарил (а): 1 раз.
Поблагодарили: 2 раз.

Re: Выборка "День недели"

Сообщение invisib1e » 05 июл 2011, 10:50

Выборка "Дней в году" (В данной выборке представление - сколько дней в следующем году).

Код: Выделить всё
SELECT DATEPART(DAYOFYEAR,CONVERT(DATETIME,CONVERT(VARCHAR,YEAR(GETDATE())+1)+'1231')) AS [Дней],
 YEAR(GETDATE())+1 AS [в году]
invisib1e
The Admin
 
Сообщения: 55
Зарегистрирован: 16 мар 2010, 22:28
Откуда: Russia, Moscow
Благодарил (а): 1 раз.
Поблагодарили: 2 раз.

Re: Календарные выборки

Сообщение invisib1e » 13 авг 2012, 09:58

Немного переработал выборку "Дней в году" на более логичный код.

Код: Выделить всё
   declare @year char(4) = '2013'
   select
      datepart(dayofyear,@year+'1231') as [Дней],
      @year as [в году]
invisib1e
The Admin
 
Сообщения: 55
Зарегистрирован: 16 мар 2010, 22:28
Откуда: Russia, Moscow
Благодарил (а): 1 раз.
Поблагодарили: 2 раз.


Вернуться в Transact-SQL

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron