Как получить год и месяц отдельно от этой строки в SQL Server?
У меня есть этот формат строки мм / гггг-
01/2010
Как я могу получить месяц и год отдельно от него. Я хочу это отдельно 01 и 2010, чтобы я мог их сравнить?
3 ответа
Решение
Пример:
declare @d char(7);
declare @Month varchar(2);
declare @Year varchar(4);
set @d = '01/2010';
SET @Month = LEFT(@d, 2);
SET @Year = RIGHT(@d, 4);
Это должно соединить вас (предполагается, что @Date представляет вашу строку даты):
DECLARE @SlashPos int;
SET @SlashPos = CHARINDEX('/', @Date);
Declare @Month varchar(2);
Declare @Year varchar(4);
SET @Month = SUBSTRING(@Date, 1, @SlashPos - 1);
Set @Year = SUBSTRING(@Date, @SlashPos + 1, LEN(@Date) - @SlashPos);
С этой точки зрения, @Month
а также @Year
будет содержать строки, представляющие месяц и год.