我正在使用SQL Server 2008,我有两个日期格式的列:
Column_1: [2014-12-19]
Column_2: [2015-08-31]
我想合并它们并将数据类型更改为NVARCHAR
。
我试过这段代码
CONVERT(NVARCHAR,[ Column_1])+CONVERT(NVARCHAR,[Column_2])AS TEST
但我得到了这个结果:
2014-12-192015-08-31
没有连字符的而不是2014121920150831
。
你能帮忙吗?
由于
答案 0 :(得分:0)
虽然您可以使用转换代码,但只需使用replace:
REPLACE(CONVERT(NVARCHAR(255), Column_1) + CONVERT(NVARCHAR(255), Column_2), '-', '') AS TEST
或者,如果您不想依赖本地日期格式:
CONVERT(NVARCHAR(255), Column_1, 112) + CONVERT(NVARCHAR(255), Column_2, 112) AS TEST
答案 1 :(得分:0)
CONVERT
有第三个参数,用于确定日期/时间的格式。有关定义,请参阅here。代码112将为您提供所需的内容。
您也可以使用REPLACE
删除连字符。
答案 2 :(得分:0)
试试这个
DECLARE @date1 date = '2014-12-19',
@date2 date = '2015-08-31'
SELECT CONVERT(VARCHAR(8), @date1, 112)+CONVERT(VARCHAR(8), @date2, 112)