關於使用多表做update的語法
一、當用一個表中的資料來更新另一個表中的資料,T-SQL提供多種寫法(下面列出了二種),但建議用第一種寫法,雖然傳統,但結構清晰。
並且要注意,當用一個表中的資料來更新另一個表中的資料時,二個表一定要有關聯!
1.
update t1 set t1.c2 = t2.c2
from t2
where t1.c1 = t2.c1
2.
Update t1 set t1.c2 = t2.c2
from t1 inner join t2 on t1.c1 = t2.c1
二、FROM 子句中指定的表的別名不能作為 SET column_name 子句中被修改欄位的限定符使用。例如,下面的內容無效:UPDATE titles
SET t.ytd_sales = t.ytd_sales + s.qty
FROM titles t, sales s
WHERE t.title_id = s.title_id
AND s.ord_date = (SELECT MAX(sales.ord_date) FROM sales)
若要使上例合法,請從列名中刪除別名 t 或使用本身的表名。
1.UPDATE titles
SET ytd_sales = t.ytd_sales + s.qty
FROM titles t, sales s
WHERE t.title_id = s.title_id
AND s.ord_date = (SELECT MAX(sales.ord_date) FROM sales)
2.UPDATE titles
SET titles.ytd_sales = t.ytd_sales + s.qty
FROM titles t, sales s
WHERE t.title_id = s.title_id
AND s.ord_date = (SELECT MAX(sales.ord_date) FROM sales)
[@more@]
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/66009/viewspace-787708/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ORACLE多表關聯UPDATE語句Oracle
- ORACLE多表關聯UPDATE 語句Oracle
- Oracle多表關聯更新的語法Oracle
- Oracle\MS SQL Server Update多表關聯更新OracleSQLServer
- Oracle\MS SQL Server的資料庫多表關聯更新UPDATE與多表更新OracleSQLServer資料庫
- Oracle多表關聯更新的方式選擇, Loop or Hash update?OracleOOP
- Mysql跨表更新 多表update sql語句總結MySql
- 如何做多表關聯查詢
- 關於優化器提示使用逗號的語法優化
- ORACLE UPDATE 語句語法與效能分析Oracle
- UPDATE SET = (SELECT ) 語法的總結
- oracle update語句的幾點寫法Oracle
- onethinkphp 如何做多表關聯查詢PHP
- 關於 select ... for update 和 for update nowaitAI
- mysql 語句不能update的解決辦法MySql
- 關於PHP的語法介紹,新手必看PHP
- Update 多個關聯表SQL的寫法SQL
- 關於unity中的update、Lateupdate和FixedUpdateUnity
- mysql update join,insert select 語法MySql
- 關於內表釋放的相關語法對比[1]
- 關於內表釋放的相關語法對比[2]
- 【Vue3.0】關於 script setup 語法糖的用法Vue
- Oracle的多表插入語句Oracle
- Oracle中 Update和insert結合語法Oracle
- 關於debian系統下使用vi編輯語法不高亮的問題
- UniRx精講(二):獨立的 Update &UniRx 的基本語法格式
- 關於ES6、ES7的常用語法整理
- 關於setRouteLeaveHook無法使用時的替代方案registerTransitionHookHook
- [20160213]關於ansi語法.txt
- mongodb 3.x 之實用新功能窺看[2] ——使用$lookup做多表關聯處理MongoDB
- Oracle多表插入語句Oracle
- 關於UPDATE中關聯查詢的執行時間考慮
- myisam對於update,insert,delete關於auto_incremant的影響deleteREM
- innodb對於update,insert,delete關於auto_incremant的影響deleteREM
- 轉 關於shell中if 語法結構的廣泛誤解
- sql多表的關係介紹SQL
- MySQL關聯多表更新的操作MySql
- mysql實現merge功能之DUPLICATE key UPDATE語法MySql