Конвертировать объединенные столбцы в дату - PullRequest
0 голосов
/ 16 января 2019

Как я могу преобразовать этот кусок кода в дату. Я использую столбец дня для создания даты, используя код ниже в TSQL.

convert(nvarchar(2),a.ucdaycode) + '/' +
    cast(month(GETDATE()) as varchar) + '/' +
    cast(YEAR(GETDATE()) as varchar)

У кого-нибудь есть идеи?

Спасибо

Ответы [ 2 ]

0 голосов
/ 16 января 2019

Вот вариант с использованием DATEADD и DATEDIFF:

SELECT
    a.ucdaycode,
    DATEADD(dd, a.ucdaycode, DATEADD(month, DATEDIFF(month, 0, GETDATE()), 0)) AS some_date
FROM yourTable a;

enter image description here

Демо

Ответ @Zohar выглядит несколько чище, но он может работать только на SQL Server 2012 или более поздней версии.

0 голосов
/ 16 января 2019

Использование DATEFROMPARTS:

SELECT DATEFROMPARTS(YEAR(GETDATE()), MONTH(GETDATE()), a.ucdaycode)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...