我有一个包含三列的表。
column1 column2 column3
mytestdata test
myotherdata test
如果column1包含column2中的值
,我想将'somestring'插入column3结果如下:
column1 column2 column3
mytestdata test 'somestring'
myotherdata test
答案 0 :(得分:4)
SQL Server:
UPDATE myTable
SET column3 = 'somestring'
WHERE column1 LIKE '%' + column2 + '%'
答案 1 :(得分:3)
SQL Server:
UPDATE theTable SET column3 = 'somestring'
WHERE CHARINDEX (column2, column1) > 0
答案 2 :(得分:2)
您有多种选择,具体取决于RDBMS。
对于MySQL和Oracle:
UPDATE yourTable
set column3 = 'somestring'
where INSTR(column2, column1) > 0
对于SQL Server:
UPDATE yourTable
set column3 = 'somestring'
where CHARINDEX(column1, column2) > 0
答案 3 :(得分:0)
您可以执行以下操作
UPDATE tmp
SET
column3 = (CASE WHEN tmp.column1 like '%' + tmp.column2 + '%' THEN 'something' ELSE tmp.column3')
FROM
tablename tmp