繁体   English   中英

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

[英]Update mysql table with data from another table

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

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

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

ISBN13 当前存储为字符串。

这应该更新 10k+ 行。

谢谢,

威廉

UPDATE table1 t1, table2 t2
SET t1.field_to_change = t2.field_with_data
WHERE t1.field1 = t2.field2;
UPDATE book_details AS bd, book_details_old AS old
SET bd.live=1  
WHERE bd.isbn13=old.isbn13  
AND old.live=1;

只需稍作改动,您就明白了:

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

从其他表中的数据更新表

UPDATE table1, table2 SET table1.field1 = table2.field1 where table1.id = table2.id

前任。 UPDATE transaction, member SET transaction.Memberid = member.memberId WHERE transaction.CardId = member.CardId;

从其他表更新数据

UPDATE  tab t1, tab t2
SET     t1.company_name = t2.company_name
WHERE   t1.id = t2.id

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM