SQL Server,如何将两列合并为一列?
Posted
技术标签:
【中文标题】SQL Server,如何将两列合并为一列?【英文标题】:SQL Server, how to merge two columns into one column? 【发布时间】:2014-10-02 04:27:20 【问题描述】:我有一个 SQL 查询
SELECT TABLE_SCHEMA + TABLE_NAME AS ColumnZ
FROM information_schema.tables
我希望结果应该是table_Schema.table_name
。
请帮帮我!!
【问题讨论】:
使用SELECT TABLE_SCHEMA + '.' + TABLE_NAME
....
【参考方案1】:
试试这个:
SELECT TABLE_SCHEMA + '.' + TABLE_NAME AS ColumnZ
FROM information_schema.tables
【讨论】:
谢谢。非常简单的 '+' 运算符将 coumn 合并到单列中【参考方案2】:SELECT CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS ColumnZ FROM information_schema.tables
【讨论】:
注意:CONCAT
是 SQL Server 2012 中的新功能,因此询问的人可能无法使用
@marc_s 我不知道这个,如果我不得不使用旧的 MSSQL 版本,它会很有用,谢谢。
在我看来,作为一项新功能并不会让答案值得一票否决。
@GordonLinoff:绝对清楚 - 这不是我的反对意见;我同意你的看法——这是一项新功能,但它是正确的——适用于较新版本的 SQL Server。没有必要投反对票...【参考方案3】:
这段代码适合你试试这个....
SELECT Title,
FirstName,
lastName,
ISNULL(Title,'') + ' ' + ISNULL(FirstName,'') + ' ' + ISNULL(LastName,'') as FullName
FROM Customer
【讨论】:
【参考方案4】:从 SQL Server 2017 开始,有 CONCAT_WS
运算符,用于与分隔符连接。
SELECT CONCAT_WS('.', TABLE_SCHEMA ,TABLE_NAME) AS ColumnZ
FROM information_schema.tables
【讨论】:
以上是关于SQL Server,如何将两列合并为一列?的主要内容,如果未能解决你的问题,请参考以下文章