ali*_*ish -2 sql-server sql-server-2012 update concat
我有 2 列 anint
和 a tiny int
,我想varchar
用值更新另一列 a one column1 + '-' + column2
。像这样的伪代码:
UPDATE COLUMN3 varchar = CONCAT (COLUMN1 INT AND + COLUMN2 TINYINT);
Run Code Online (Sandbox Code Playgroud)
我怎样才能用真正的代码做到这一点?
需要参考您的表格。CONCAT函数将处理INT
和之间的转换TINY INT
。
UPDATE YourTableName SET Column3 = CONCAT(Column1, '-', Column2)
Run Code Online (Sandbox Code Playgroud)
NULL
值被视为空字符串 ( ''
) CONCAT
。如果要过滤掉这些记录,请添加IS NOT NULL
为WHERE
条件。
UPDATE YourTableName SET Column3 = CONCAT(Column1, '-', Column2)
WHERE Column1 IS NOT NULL AND Column2 IS NOT NULL
Run Code Online (Sandbox Code Playgroud)
您也可以显式转换为VARCHAR
,但请记住,以NULL
这种方式(与+
)连接的任何值都会产生NULL
结果。
UPDATE YourTableName SET
Column3 = CONVERT(VARCHAR(50), Column1) + '-' + CONVERT(VARCHAR(50), Column2)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
7501 次 |
最近记录: |