如果该列包含月份数字的 CSV,那么试试这个 (SQL_Server 2016)
DECLARE @t TABLE (
Months_csv NVARCHAR (15)
);
INSERT INTO @t
(
Months_csv
)
VALUES
(
N'7,7,8,9'
);
SELECT
value
,[MonthName]=DATENAME(MONTH, DATEADD(MONTH, CAST(value AS INT), -1))
FROM
@t T
CROSS APPLY
STRING_SPLIT(T.Months_csv, ',');
输出
value MonthName
7 July
7 July
8 August
9 September
如果不是 CSV 列表,那么试试这个
DECLARE @t TABLE (
Months_ int
);
INSERT INTO @t
(
Months_
)
VALUES
(7),(7),(8),(9);
SELECT
T.Months_
,[MonthName]=DATENAME(MONTH, DATEADD(MONTH, T.Months_, -1))
FROM
@t T
输出
Months_ MonthName
7 July
7 July
8 August
9 September