【发布时间】:2017-08-29 06:48:44
【问题描述】:
我需要从 Column2_table1 中提取第一个字符并将其添加到来自 Column1_table1 的值之前,并且我希望这个连接值进入空列 Column3_table1。
我有:
Column1_table1 Column2_table1 Column3_table1
1234 abcd
1245 aeio
1545 dfaf
1545 jhui
INSERT INTO [dbo].[Table1] ([Column3_table1])
SELECT
Column1_table1,
CONCAT(left(Column2_table1,1) ,Column1_table1)
FROM Table1
Msg 121, Level 15, State 1, Line 1 INSERT 的选择列表 语句包含比插入列表更多的项目。的数量 SELECT 值必须与 INSERT 列数匹配。
我需要
Column1_table1 Column2_table1 Column3_table1
1234 abcd a1234
1245 aeio a1245
1545 dfaf d1545
1545 jhui j1545
感谢您的帮助
【问题讨论】:
-
您使用的是 MySQL 还是 MS SQL Server?不要标记未涉及的产品。
-
您尝试在 insert 的一列中从 select 中插入两列
-
SELECT(([Column3_table1])) 中的列数为 1,而INSERT中的列数为 2 (Column1_table1, CONCAT(left(Column2_table1,1) ,Column1_table1))。 -
你想要更新。但是,存储这样的“计算”值通常不是一个好主意。换一个观点。或计算列。
标签: sql sql-server sql-update substring concat