多表關聯update語句怎麼寫呀

2022-01-05 01:06:04 字數 4702 閱讀 8808

1樓:匿名使用者

update a,b set a.sj1=b.sj2where

a.hm1=b.hm1

新手,不知道這樣寫對不對。

2樓:匿名使用者

update多表更新**)(2008-05-12 15:29:04)

**標籤:update多表更新sql 分類:php網路程式設計

在開發中,資料庫來回換,而有些關鍵性的語法又各不相同,這是一件讓開發人員很頭痛的事情.本文總結了update語句更新多表時在sql server,oracle,mysql三種資料庫中的用法.我也試了sqlite資料庫,都沒成功,不知是不支援多表更新還是咋的.

在本例中: 我們要用表gdqlpj中的gqdltks,bztks欄位資料去更新landleveldata中的同欄位名的資料,條件是當 landleveldata 中的geo_code字段值與gdqlpj中的lxqdm字段值相等時進行更新.

sql server語法:update set | @variable = expression | @variable = column = expression } [ ,...n ] [ ,...

n ] ] [ where < search_condition > ] } | [ where current of | cursor_variable_name } ] } [ option ( < query_hint > [ ,...n ] ) ]

sql server示例: update a set a.gqdltks=b.

gqdltks,a.bztks=b.bztks from landleveldata a,gdqlpj b where a.

geo_code=b.lxqdm

oracle語法: update updatedtable set (col_name1[,col_name2...])= (select col_name1,[,col_name2...

] from srctable [where where_definition])

oracel 示例: update landleveldata a set (a.gqdltks, a.

bztks)= (select b.gqdltks, b.bztks from gdqlpj b where a.

geo_code=b.lxqdm)

mysql語法: update table_references set col_name1=expr1 [, col_name2=expr2 ...] [where where_definition]

mysql 示例: update landleveldata a, gdqlpj b set a.gqdltks= b.

gqdltks, a.bztks= b.bztks where a.

geo_code=b.lxqdm

oracle多表關聯update語句如何實現?

3樓:匿名使用者

--oracle 裡面欄位有漢字的設計都是自找麻煩;

--<>中的內容是欄位名稱,實際表不可能是你這種表示的名稱。

update 《表1> set 《姓名》=(select c.《姓名》 from 《表3> c,《表2> b

where c.id=b.《表3id> and 《表1>.《表2id>=b.《表3id>);

4樓:axure夜話

oracle沒有update from語法--利用檢視 進行多表更新

update(

select a.姓名 aname,c.姓名 bnamefrom stuinfo1 a

inner join 表2 b

on a.id=b.id

inner join 表3 c

on b.id=c.id

)set bname=aname;

sql語句update 多表關聯的

5樓:

語句沒有語法錯誤,你用的什麼資料庫?

有些很早期的資料庫,或者是很簡單的資料庫是不支援多表查詢的,比如access97等

你這個在執行的時候有報錯嗎,你能把執行後的日誌打出來嗎?

6樓:0午夜流浪

語法不對

這樣寫:

update tbl_goods

set tbl_goods.standards=(select

tbl_design_film.standardsfrom tbl_goods,tbl_design_filmwhere tbl_goods.film=tbl_design_film.

id);

並且確定子查詢只能有一條記錄

7樓:匿名使用者

update tbl_goods a

set a.standards=(select b.standards

from tbl_design_film bwhere a.film=b.id)

===閒得沒事,服務大家,解決問題*****===

oracle 關聯兩表寫update語句

8樓:匿名使用者

兩種方法:

-- 方法1.

update  表2

set表2.c  =  (select  b  from  表1  where   表1.a = 表2.a)

where

exists ( select 1 from   表1  where   表1.a = 表2.a)

-- 方法2

merge into 表2

using 表1

on ( 表2.a = 表1.a )    -- 條件是 a 相同when matched then update set 表2.c = 表1.b   -- 匹配的時候,更新

9樓:匿名使用者

update t2 set c=(select b from t1 where t1.a = t2.a)

where exists(select 1 from t1 where t1.a = t2.a)

10樓:匿名使用者

update 表2 set 表2.c=表1.b from 表1 inner join 表2 on 表1.a=表2.a

11樓:清開心

update 表2

set b=c

from 表1,表2

sql server資料庫多表關聯如何更新?

12樓:匿名使用者

一條update更新語句是不能更新多張表的,除非使用觸發器隱含更新。而表的更新操作中,在很多情況下需要在表示式中引用要更新的表以外的資料。我們先來討論根據其他表資料更新你要更新的表

一、ms sql server 多表關聯更新

sql server提供了update的from 子句,可以將要更新的表與其它的資料來源連線起來。雖然只能對乙個表進行更新,但是通過將要更新的表與其它的資料來源連線起來,就可以在update的表示式 中引用要更新的表以外的其它資料。

一般形式:

update a set 欄位1=b表字段表示式, 欄位2=b表字段表示式 from b where 邏輯表示式

例如:update dbo.table2

set dbo.table2.colb = dbo.table2.colb + dbo.table1.colb

from dbo.table2

inner join dbo.table1

on (dbo.table2.cola = dbo.table1.cola);

實際更新的操作是在要更新的表上進行的,而不是在from子句所形成的新的結果集上進行的

13樓:復活節出

親,這個不是寫sql語句,是改資料庫的更新規則

選擇「資料庫」選單 然後「編輯參照完整性」開啟參照完整性生成器,在「更新規則」選項卡中選擇「級聯」即可

14樓:匿名使用者

select 車票號,sum(a.總票數) as 總票數,sum(a.已售票數 + b.

預訂數量) as 已售票數,sum(a.總票數 - a.已售票數 - b.

預訂數量) as 剩餘票

from 車票表 a left join 訂單表 b on a.車票號 = b.車票號

group by a.車票號

純技術活,求大哥賞點分吧!

15樓:匿名使用者

sql server語法:update set | @variable = expression | @variable = column = expression } [ ,...n ]

[ ,...n ] ] [ where < search_condition > ] } | [

where current of | cursor_variable_name } ] } [

option ( < query_hint > [ ,...n ] ) ]

sql server示例: update a set a.gqdltks=b.gqdltks,a.bztks=b.bztks from

landleveldata a,gdqlpj b where a.geo_code=b.lxqdm

java語句怎麼寫

public class main6 public static void speak int age,string gender if age 11 age 30 else if age 31 age 50 else if age 51 else public class studentdemop...

mysql按月份統計,sql語句怎麼寫

裡上圖 表 aaa,要按月份查詢,a 出現的次數,如下select cast year rq as varchar cast month rq as varchar as date,count as 次數 from aaa where a a group by cast year rq as var...

Sql這條語句該怎麼寫!求大神幫助

囂張的農村人 delete building where 開盤 in select max 開盤 building where 樓盤名稱 龍湖觀山水 sql查詢語句,求大神幫助!這樣的sql語句怎麼寫?求大神幫忙 使用 max 函式就可以了 select select max a from tabl...