我需要你的帮助来整理一张桌子。我添加了两个新列。我想用另一个(col1)的数据填写这些列(col2,col3)。目前,该列包含两个由“val1; val2”分隔的值。
col1包含一个字符串,但有时val1不存在,col1只包含“; val2”
对于此表的每一行,我想拆分col1中的值以分隔执行此代码的日期:
最后,每列只包含一个值。
Before the script:
col1 (string) = "tom;car"
After the script:
col1 (string) = "tom"
col2 (string) = "car"
col3 (bit) = "1"
我不知道如何在SQL Server Management中直接执行此操作。我想创建一个脚本来执行此代码。
答案 0 :(得分:1)
这样的东西?
update t
set col3 = (case when col1 not like ';%' then 1 else col3 end),
col1 = left(col1, charindex(';', col1) - 1),
col2 = substring(col1, charindex(';', col1) + 1, len(col1));