1樓:微醺36度
一條update只能修改一張表裡的字段,但是可以關聯多張表去修改。不知道你用的是什麼資料庫。
常用的sqlserver格式如下:
update table1 set a.欄位1=b.欄位1,....
,a.欄位n=b.欄位n from table1 a,table2 b where 兩個表的關聯字段。
常用的oracle格式如下:
update table1 a set (a.欄位1,....,a.
欄位n) =(select b.欄位1,...,b.
欄位n from table2 b where 兩個表的關聯字段) where exists (select 1 from table2 b where 兩個表的關聯字段)。
注意oracle語句裡的exists不能省略,否則會導致沒有對應關係的資料修改錯誤,甚至會報錯。
exists 指定乙個子查詢,檢測 行 的存在。
2樓:匿名使用者
可以,如:
update 表a set 欄位a=tba.欄位b +tba.欄位cfrom
(select * from 表b as a left join 表c as b on a.主鍵=b.主鍵) as tba
where tba.主鍵=表a.主鍵
3樓:匿名使用者
不能update兩張表,但是可以出現在where條件中
如何用一條sql來update兩張表
sql的update語句後能跟多個表嗎?
4樓:幾個木頭
不知道你所說的跟多個表要達到什麼效果,在t-sql中可以使用join,多表關聯以確定更新範圍,但是最終更新的只能是指定表。
update t
set t.update_field = valuefrom table1 t
join table2 t1 on t.filed = t1.field
5樓:夜玄冬
沒用過,也沒見人用過,你分開寫,一塊提交不是一樣麼?
mssql 兩個表的update用法
6樓:
update fromb
set tp2 = a.tp2
from
(select tpname,tp2 from froma) as a
where tpname = a.tpname
7樓:匿名使用者
update froma set froma.tp2=fromb.tp2 from formb where froma.tpname=fromb.tpname
jsp中兩張表資料怎樣才能用sql語句查詢出來
select from students s inner join results rs on s.student no rs.student no 你這裡顯示學生序列號,學生號是不是同乙個東西?results 表中的student no就是students中的student no吧 select ...
sql兩張表的聯絡是主表欄位是由子表id加號拼接而成,請問怎麼連
day無敵在路上 有兩個表a和b,均有key和value兩個欄位,如果b的key在a中也有,就把b的value換為a中對應的value update b set b.value select a.value from a where a.key b.key where b.id in select ...
懂養老醫療保險的幫忙看看這兩張表
按國家規定,單位職工參保繳費,單位承擔職工年工資總額20 個人承擔8 其中單位繳納部分計入統籌資金 個人繳納部分計入個人賬戶。這只是國家計算養老金的一種方法,主要用於養老轉移和退休待遇的計算,全國統一,對個人享受養老金待遇沒有任何影響 此表為養老保險賬戶表,即個人賬戶表。表中當年賬戶計入額在2006...