tid(自增) code calexpr
1 zj0001 null
2 zj0002 [clv]+[clv]+[clv]
3 zj0004 null
4 zj0005 [clv]+[clv]
5 zj0008 [clv]+3
6 zj0010 [clv]+[clv]
7 zj0011 [clv]*100
我想要得到的結果是:把 calexpr 列中出現的 code 用這個code 對應的tid 代替,(calexpr中出現的code能保證存在)
1 zj0001 null
2 zj0002 [clv]+[clv]+[clv]
3 zj0004 null
4 zj0005 [clv]+[clv]
5 zj0008 [clv]+3
6 zj0010 [clv]+[clv]
7 zj0011 [clv]*100
謝了再說。
while exists (
select 1
from tablename a,tablename b
where a.calexpr like '%'+b.code+'%'
)update a
set calexpr=replace(a.calexpr,b.code,cast(b.tid as varchar(10)))
from tablename a,tablename b
where a.calexpr like '%'+b.code+'%'
一條SQL更新語句的執行過程
目錄如果執行這條更新語句資料庫是如何執行的呢?update student set name 小明 where studentid 1根據之前說過的sql語句查詢的流程來說,只要表上有資料更新,有關查詢的索引就會失效,接下來分析器會根據每個單詞識別知道這是update語句,優化器根據這個id獲取需要...
一條SQL更新語句是如何執行的
mysql create table t id int primary key,c int 如果要將id 2這一行的值加1,sql語句就會這麼寫 mysql update t set c c 1where id 2 執行語句前要先連線資料庫,這是聯結器的工作。在乙個表上有更新的時候,跟這個表有關的查...
乙個不會的SQL語句
12.有兩個表a 和b 均有key 和value 兩個字段,如果b 的key 在a 中也有,就把b 的value 換為a 中對應的value 這道題的sql 語句怎麼寫?update b set value select value from awhere a.key b.key where exi...