mysql復(fù)制表中的一列到另一個(gè)表中
有時(shí)候,我們需要復(fù)制某個(gè)字段一整列的數(shù)據(jù)到另外一個(gè)新的字段中,這很簡單,SQL可以這么寫:
UPDATE tb_1 SET content_target = content_source;
大概寫法如下:
Update {your_table} set {source_field} = {object_field} WHERE cause
有Navicat等工具更好,可以直接選中一列數(shù)據(jù),拷貝粘貼到你需要的列中。如果是同一個(gè)表那沒什么問題,如果是新表,請(qǐng)保持它們的行數(shù)是一致。如果行數(shù)不一致,你可以新建一個(gè)表,再把列拷貝進(jìn)去,這樣id數(shù)也會(huì)保持一致。
有時(shí)候這些MySQL界面工具會(huì)報(bào)錯(cuò),這個(gè)時(shí)候用命令行更好。比如復(fù)制一個(gè)表字段數(shù)據(jù)到另外一個(gè)表的字段,可以這么寫:
UPDATE tb_1 INNER JOIN tb_2 ON tb_1.tid = tb_2.tid
SET tb_1.tcontent = tb_2.tcontent
下面是一個(gè)實(shí)際例子,將PHPCMS已生成的靜態(tài)頁面的鏈接寫入phpcms_content
表中的url字段:
先這樣拼湊出需要的url字段列。
SELECT CONCAT(FROM_UNIXTIME(inputtime,'%Y/%m%d'), '/', contentid, '.html') AS dt FROM phpcms_content ORDER BY contentid DESC
然后再查詢編輯器(navicat)中,將整段復(fù)制拷貝到phpcms_content
表中的url列即可。
不同表之間字段復(fù)制的例子:
需求:把student表的name字段復(fù)制到student_rec表的name字段
student表
![](http://img.jbzj.com/file_images/article/201903/2019320150129221.png?201922015141)
student_rec表
![](http://img.jbzj.com/file_images/article/201903/2019320150148439.png?201922015213)
sql實(shí)現(xiàn):
UPDATE student_rec INNER JOIN student ON student.id = student_rec.student_id
SET student_rec.`name` = student.`name`
結(jié)果:
![](http://img.jbzj.com/file_images/article/201903/2019320150222030.png?201922015233)
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
您可能感興趣的文章:- MySQL復(fù)制表的三種方式(小結(jié))
- Mysql復(fù)制表三種實(shí)現(xiàn)方法及grant解析
- MySQL不同表之前的字段復(fù)制
- Mysql數(shù)據(jù)表中的蠕蟲復(fù)制使用方法
- MySQL 復(fù)制表詳解及實(shí)例代碼
- MySQL查詢結(jié)果復(fù)制到新表的方法(更新、插入)
- mysql 復(fù)制表結(jié)構(gòu)和數(shù)據(jù)實(shí)例代碼
- MySQL中復(fù)制數(shù)據(jù)表中的數(shù)據(jù)到新表中的操作教程
- MySQL中表的復(fù)制以及大型數(shù)據(jù)表的備份教程
- Mysql復(fù)制表結(jié)構(gòu)、表數(shù)據(jù)的方法
- MySQL 復(fù)制表的方法