Mysql根據(jù)一個表的數(shù)據(jù)更新另一個表數(shù)據(jù)的SQL寫法(三種寫法)
問題描述
概述:用一個表中的字段去更新另外一個表中的字段, MySQL 中有相應(yīng)的 update 語句來支持,不過這個 update 語法有些特殊??匆粋€例子就明白了。
解決辦法(推薦第三種)
方法一:
update people s set city_name = (select name from city where code = s.city_code);
結(jié)果:
結(jié)論:
- 代碼對應(yīng)的城市更新,對應(yīng)錯誤的更正;
- city表中沒有的城市,在people表里全被更新為null。
方法二:
UPDATE people LEFT JOIN city ON people.city_code=city.`code` SET people.city_name=city.`name`;
結(jié)果:
結(jié)論: 和方法一 一樣.
方法三:
update people s, city c set s.city_name = c.name where s.city_code = c.code;
結(jié)果:
結(jié)論:
- 代碼對應(yīng)的城市更新,對應(yīng)錯誤的更正;
- city表中沒有的城市,在people表里保持原數(shù)據(jù),不會被清空。
注意事項:
如果數(shù)據(jù)量比較大記得建索引,建索引前十萬數(shù)據(jù)一個小時,建索引后十萬數(shù)據(jù)幾十秒跑完(這里就給city_code建了索引)
到此這篇關(guān)于Mysql根據(jù)一個表的數(shù)據(jù)更新另一個表數(shù)據(jù)的SQL寫法(三種寫法)的文章就介紹到這了,更多相關(guān)mysql根據(jù)一個表的數(shù)據(jù)更新另一個表內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MySQL權(quán)限USAGE和ALL PRIVILEGES的用法
本文主要介紹了MySQL權(quán)限USAGE和ALL PRIVILEGES的用法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-09-09JDBC鏈接mysql插入數(shù)據(jù)后顯示問號的原因及解決辦法
這篇文章主要介紹了JDBC鏈接mysql插入數(shù)據(jù)后顯示問號的原因及解決辦法的相關(guān)資料,需要的朋友可以參考下2016-04-04MySQL中ROUND函數(shù)進行四舍五入操作陷阱分析
這篇文章主要介紹了MySQL中ROUND函數(shù)進行四舍五入操作陷阱,結(jié)合實例形式分析了mysql使用ROUND函數(shù)進行四舍五入運算中出現(xiàn)的問題及其錯誤原因,需要的朋友可以參考下2018-06-06mysql查詢時offset過大影響性能的原因和優(yōu)化詳解
這篇文章主要給大家介紹了關(guān)于mysql查詢時offset過大影響性能的原因和優(yōu)化的相關(guān)資料,并在文末跟大家分享了MYSQL中l(wèi)imit,offset的區(qū)別,需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-06-06mysql大數(shù)據(jù)查詢優(yōu)化經(jīng)驗分享(推薦)
這篇文章主要介紹了mysql大數(shù)據(jù)查詢優(yōu)化經(jīng)驗分享,真的是正兒八經(jīng)的mysql優(yōu)化技巧,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2018-03-03詳解MySQL數(shù)據(jù)庫設(shè)置主從同步的方法
最近一直在研究mysql的主從同步問題,現(xiàn)在網(wǎng)上也有很多資料,現(xiàn)在感覺寫的都很好(當初感覺寫的很差,是因為自己的領(lǐng)悟較差),于是想跟大家分享一下自己配置的整個過程和經(jīng)驗。有需要的朋友歐美可以參考借鑒,感興趣的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧。2016-11-11