使用SQL Server 2014连接两列

时间:2015-10-17 15:39:54

标签: sql sql-server sql-server-2014

我对SQL Server世界很陌生,并尝试连接。

在A栏中,我的数据格式为2015-03-28 00:00:00 000,而B栏中的数据格式为123456789

当我写代码时

SELECT CONCAT(B1,'-',A1) FROM Tbl

我得到123456789-Mar 28 2015 12:00AM的结果。

我希望得到的是123456789-2015/03/28-00:00:00

此外,如果我只想123456789-2015/03/28代码是什么?

2 个答案:

答案 0 :(得分:3)

使用FORMAT功能格式化日期:

CREATE TABLE #Tbl(B1 NVARCHAR(100), A1 DATE);

INSERT INTO #Tbl VALUES('123456789', '2015-03-28');

SELECT 
  result1 = CONCAT(B1,'-',FORMAT(A1, 'yyyy/MM/dd-HH:mm:ss'))
  ,result2 = CONCAT(B1,'-',FORMAT(A1, 'yyyy/MM/dd'))
FROM #Tbl

LiveDemo

答案 1 :(得分:1)

CONCAT函数需要并返回字符串,这就是日期格式化的原因。

使用FORMATCONVERT函数在连接之前强制使用您选择的格式。

CONCAT(B1, '-', FORMAT(A1, 'yyyy/MM/dd'))

CONCAT(B1, '-', CONVERT(VARCHAR(10), A1, 111))