2017-02-21 2 views
1

У меня есть столбец TDate для даты. Я хотел бы сгруппировать свои данные по месяцам и годам, поэтому в моем выбранном запросе у меня есть столбцы TMonth и TYear (выберите DATEPART (mm, TDate) как TMonth, DATEPART (yyyy, TDate) As TYear из MyTable). Оба теперь являются целыми числами. Теперь я хотел бы объединить его в одном столбце, используя запрос select с форматом mm/dd/yyyy. dd должен быть последним днем ​​TMonth.MS SQL - Объединить два столбца Integer как Date

Как это сделать, используя выделенный sql-запрос? Пожалуйста помоги. Заранее спасибо. :)

ответ

1

"Современная" версия SQL Server, начиная с 2012 года, имеет datefromparts функции можно использовать для создания даты:

SELECT DATEFROMPARTS(TYear, TMonth, 1) 
FROM mytable 
+0

Я забыл упомянуть, что использую SQL Сервер 2008. – angel

1

Got его с помощью
ВЫБЕРИТЕ DATEPART (мм, TDate) в TMonth , DATEPART (yyyy, TDate) As TYear, DATEADD (d, -1, DATEADD (m, DATEDIFF (m, 0, TDate) + 1, 0)) Из MyTable

Смежные вопросы