简体   繁体   English

连接两列值

[英]Concatenate two columns values

I am trying to concatenate two date columns, putting a - between the values. 我试图连接两个date列,在值之间放置一个-

Table: 表:

Column A                | Column B
------------------------|-------------------------
2010-07-01 00:00:00.000 | NULL
NULL                    | 2011-01-12 00:00:00.000
2006-04-01 00:00:00.000 | 2010-05-31 00:00:00.000
NULL                    | NULL

Query: 查询:

select L.ColumnA + ' - ' + L.Column B AS [Dates] 
from abc L

It's showing all the fields NULL unless both the columns have some data like 除非所有列都包含一些数据,否则它将显示所有字段为NULL

2006-04-01 00:00:00.000-2010 - 05-31 00:00:00.000

However, the final output I need is: 但是,我需要的最终输出是:

[Dates]
--------------------
07/01/10 - 
04/01/06 - 05/31/10
 - 01/12/11
<blank (for nulls)>

You need to convert NULL values to empty strings. 您需要将NULL值转换为空字符串。 At the very least: 至少:

SELECT COALESCE(L.ColumnA, '') + '-' + COALESCE(L.ColumnB, '') AS [Dates] 
    FROM abc L

Then, to format the dates as shown: 然后,按如下所示格式化日期:

SELECT COALESCE(CONVERT(CHAR(8), L.ColumnA, 1), '') + '-' 
     + COALESCE(CONVERT(CHAR(8), L.ColumnB, 1), '') AS [Dates] 
    FROM abc L

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM