update s set s.classbid = lc.itemid
from dbo.Lv_servers as s INNER JOIN
spa
dbo.Lv_LineChannel as lc ON s.Classsid = lc.ClassId where s.classbid >0
server
SQL用另一個表的數據更新本表數據,兩個表的關係要寫在from的後面表的別名也要寫在這裏,寫在update後面是不行的,update後面跟着要更新的表,至於同時更新兩表的數據暫時沒有用過就 不知道了。it
更新分類族譜 convert(nvarchar, s.id) int 轉成nvarcharclass
/*更新一級分類*/
update T_Category set family=','+convert(nvarchar, id) +',' where lv=0
/*更新二級分類*/
update s set s.family = ','+convert(nvarchar, s.id) +sc.family
from dbo.T_Category as s left JOIN dbo.T_Category as sc ON s.headid = sc.id where s.lv =1
/*更新三級分類*/
update s set s.family = ','+convert(nvarchar, s.id) +sc.family
from dbo.T_Category as s left JOIN dbo.T_Category as sc ON s.headid = sc.id where s.lv =2date