SQL INSERT INTO SELECT,组合 varchar 列

标签 sql sql-server

假设我有一个包含 firstName 和 lastName 列的表。是否可以执行 INSERT INTO newTable SELECT firstName, lastName FROM oldTable,但不是在结果表中有两列,而是连接两列?

同样,是否可以将列与静态字符串连接起来?

最佳答案

是的,你会这样做

SELECT LTRIM(RTRIM(ISNULL(firstName, '') + ' ' + ISNULL(lastName, ''))) FROM oldTable

这将连接 firstName 和 lastName 列,以及中间的静态字符串 ' '

编辑:添加了 LTRIM(RTRIM(...)) 所以如果 firstName 或 lastName 为空,结果将不会有前导或尾随空格,因为静态 ' ' 字符串。

关于SQL INSERT INTO SELECT,组合 varchar 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9184876/

相关文章:

php - 年月最大值 Mysql/PHP

sql - 将不可空列添加到 SQL Server 中的现有表?

sql-server - 无法恢复 SQL Server 数据库 - 'The file or filegroup <logfilename> cannot be selected for this operation.'

sql-server - 如何获取所有数据库用户的列表

sql-server - 在Django数据库中插入多个值-原始sqlite语句

mysql - 更好的 table 设计

mysql - mysql中两列之间的区别

php mysql 图片显示不正确

mysql - ID 引用表而不是表中的列

c# - 尝试从存储过程中读取多个实体结果集时出现问题