当前位置:  开发笔记 > 后端 > 正文

使用另一个表中的数据更新mysql表

如何解决《使用另一个表中的数据更新mysql表》经验,为你挑选了3个好方法。

是否可以使用子选择在mysql 5.0上运行UPDATE命令.

我想要运行的命令是这样的:

UPDATE book_details
SET live = 1 
WHERE ISBN13 = '(SELECT ISBN13 FROM book_details_old WHERE live = 1)';

ISBN13当前存储为字符串.

这应该是更新10k +行.

谢谢,

威廉



1> MCurbelo..:
UPDATE table1 t1, table2 t2
SET t1.field_to_change = t2.field_with_data
WHERE t1.field1 = t2.field2;


这是满足所有需求的更好的答案,非常感谢!

2> Rob..:
UPDATE book_details AS bd, book_details_old AS old
SET bd.live=1  
WHERE bd.isbn13=old.isbn13  
AND old.live=1;



3> Ricardo Acra..:

只是一个小小的变化,你得到它:

UPDATE book_details
SET live = 1 
WHERE ISBN13 in (SELECT ISBN13 FROM book_details_old WHERE live = 1);


静态"1"不是所请求的来自另一个表的数据.
推荐阅读
oDavid_仔o_880
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有