展會信息港展會大全

MySQL 從一張表update字段到另外一張表中
來源:互聯(lián)網(wǎng)   發(fā)布日期:2015-09-21 21:40:22   瀏覽:9520次  

導讀:使用MySQL 4.0版或更高更新您可以通過加入兩個或多個表一起一表;通過加入兩個表連同您可以更新一個表的記錄在相關領域的總部設在另一個表。...

先來幾個簡單的示例

Solution 1: 1列

update student s, city c

set s.city_name = c.name

where s.city_code = c.code;

Solution 2: 多個列

update a, b

set a.title=b.title, a.name=b.name

where a.id=b.id

Solution 3: 子查詢

update student s set city_name = (select name from city where code = s.city_code);

我們再來看幾個負責寫的

例如: 把表 tk_zyt_scenery_order的 字段更新到 t_advs_order中去, 一般可能會這樣寫:

UPDATE t_advs_order SET

attribute1=(SELECT o.order_state FROM tk_zyt_scenery_order o WHERE o.order_id=`on`),

attribute2=(SELECT o.order_state FROM tk_zyt_scenery_order o WHERE o.order_id=`on`)

WHERE EXISTS (SELECT o.order_state FROM tk_zyt_scenery_order o WHERE o.order_id=`on`);

這樣效率比較低下, 優(yōu)化寫法:

UPDATE t_advs_order a INNER JOIN tk_zyt_scenery_order s ON s.order_id=a.`on` SET

a.attribute1=s.order_id,

a.attribute2=s.order_id;


贊助本站

相關內(nèi)容
AiLab云推薦
推薦內(nèi)容
展開

熱門欄目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能實驗室 版權所有    關于我們 | 聯(lián)系我們 | 廣告服務 | 公司動態(tài) | 免責聲明 | 隱私條款 | 工作機會 | 展會港