我有大约100条需要在数据库中更改的记录,这些记录需要快速连续更新。然后他们必须恢复原来的内容。
将以下内容视为我的数据结构:
[old value] [new value]
|row1 | |row1 |
|ark-PAR| |ark-paw|
|ark-BAR| |ark-pag|
以及:
[old value][new value]
|row2 | |row2 |
|vim-PAR| |vim-paw|
|vim-BAR| |vim-pag|
如何在row1中搜索例如ark-PAR,然后用ark-paw替换它,以及在row2中搜索vim-PAR并用vim-paw替换它,然后为ark-BAR,vim-BAR等做同样的事情?
我猜是某种形式的陈述,例如(注意;语法不正确):
IF (dbo.table.row1 = 'vim-PAR')
update dbo.row1
set row1 = replace(row1, 'ark-PAR', 'ark-paw)
AND set row2 = replace(row2, 'vim-PAR', 'vim-paw'
这样做是最好的,但我如何为多行和项目执行此操作?
我在网上看过几个讨论嵌套替换的资源,但对于超过100条记录来说这似乎不可行。
答案 0 :(得分:3)
试试这个:
update [table] set [column] = 'ark-paw' where [column] = 'ark-PAR'
update [table] set [column] = 'ark-pag' where [column] = 'ark-BAR'
update [table] set [column] = 'vim-paw' where [column] = 'vim-PAR'
update [table] set [column] = 'vim-pag' where [column] = 'vim-BAR'
注意:你必须提供表格和表格。要更新的列名称。
答案 1 :(得分:2)
尝试此解决方案,因为它可以快速更新
return $query->result;
答案 2 :(得分:2)