#sql #sql-server #sql-server-2005
#sql #sql-server #sql-server-2005
Вопрос:
Использование SQL Server 2005:
Как я могу получить числовой день месяца и день квартала в запросе?
DECLARE @DATE DATETIME
SET @DATE = GETDATE()
SELECT DATEPART(dy, @DATE) AS DayOfYear
--, <something> AS DayOfQuarter
--, <something> AS DayOfMonth
, DATEPART(dw, @DATE) AS DayOfWeek
Заранее спасибо!
Комментарии:
1. 1 Только что узнал несколько новых приемов работы с датами из ответа Кейда Ру на ваш вопрос, спасибо, хотя я ответил на половину из них.
Ответ №1:
DECLARE @DATE DATETIME
SET @DATE = GETDATE()
SELECT DATEPART(dy, @DATE) AS DayOfYear
, DATEDIFF(d, DATEADD(qq, DATEDIFF(qq, 0, @DATE), 0), @DATE) 1 AS DayOfQuarter
, DAY(@Date) AS DayOfMonth
, DATEPART(dw, @DATE) AS DayOfWeek
Ответ №2:
Что касается дня квартала, это потребует некоторого дальнейшего изучения с моей стороны. Несмотря на это, я предполагаю, что для дня месяца это будет просто сама дата:
select DATEPART(D, @DATE)
Ответ №3:
SELECT
DATEPART(year, '12:10:30.123')
,DATEPART(month, '12:10:30.123')
,DATEPART(day, '12:10:30.123')
,DATEPART(dayofyear, '12:10:30.123')
,DATEPART(weekday, '12:10:30.123');