溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

SQL 中怎么利用Update實(shí)現(xiàn)多表聯(lián)合更新

發(fā)布時(shí)間:2021-08-03 16:40:54 來源:億速云 閱讀:611 作者:Leah 欄目:數(shù)據(jù)庫

這篇文章將為大家詳細(xì)講解有關(guān)SQL 中怎么利用Update實(shí)現(xiàn)多表聯(lián)合更新,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

(1) sqlite 多表更新方法

復(fù)制代碼 代碼如下:


//----------------------------------
update t1 set col1=t2.col1
from table1 t1
inner join table2 t2 on t1.col2=t2.col2

這是一個(gè)非常簡(jiǎn)單的批量更新語句 在SqlServer中支持此語法 sqlite中卻不支持

sqlite中可轉(zhuǎn)換為 如下語法

復(fù)制代碼 代碼如下:


update table1 set col1=(select col1 from table2 where col2=table1.col2)

update ta_jbnt_tzhd_pht_Area_xiang set t1=(select sys_xzqhdm.name from sys_xzqhdm
 where t2=sys_xzqhdm.code)

(2) SQL Server 多表更新方法

復(fù)制代碼 代碼如下:


//----------------------------------
SQL Server語法:UPDATE { table_name WITH ( < table_hint_limited > [ ...n ] ) |
view_name | rowset_function_limited } SET { column_name = { expression | DEFAULT
| NULL } | @variable = expression | @variable = column = expression } [ ,...n ]
{ { [ FROM { < table_source > } [ ,...n ] ] [ WHERE < search_condition > ] } | [
WHERE CURRENT OF { { [ GLOBAL ] cursor_name } | cursor_variable_name } ] } [
OPTION ( < query_hint > [ ,...n ] ) ]

SQL Server示例:

復(fù)制代碼 代碼如下:


update a set a.gqdltks=b.gqdltks,a.bztks=b.bztks from
landleveldata a,gdqlpj b where a.GEO_Code=b.lxqdm

access數(shù)據(jù)庫多表更新方法

復(fù)制代碼 代碼如下:


x = "update " + DLTB + " a inner join tbarea2 b  on a.objectid=b.FID  set a." + fd_dltb_xzdwmj + "=b.area_xzdw, a." + fd_dltb_lxdwmj + "=b.area_lxdw";
 SQLList.Add(x);

(3) Oracle 多表更新方法

Oracle語法:

復(fù)制代碼 代碼如下:


UPDATE updatedtable SET (col_name1[,col_name2...])= (SELECT
col_name1,[,col_name2...] FROM srctable [WHERE where_definition])

Oracel 示例:

復(fù)制代碼 代碼如下:


update landleveldata a set (a.gqdltks, a.bztks)= (select b.gqdltks,
b.bztks from gdqlpj b where a.GEO_Code=b.lxqdm)

(4) MySQL 多表更新方法

MySQL語法:

復(fù)制代碼 代碼如下:


UPDATE table_references SET col_name1=expr1 [, col_name2=expr2 ...]
[WHERE where_definition]

MySQL 示例:

復(fù)制代碼 代碼如下:


update landleveldata a, gdqlpj b set a.gqdltks= b.gqdltks, a.bztks=
b.bztks where a.GEO_Code=b.lxqdm

關(guān)于SQL 中怎么利用Update實(shí)現(xiàn)多表聯(lián)合更新就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI