是否可以使用子选择在mysql 5.0上运行UPDATE命令。使用另一个表中的数据更新mysql表
我想运行的命令是这样的:
UPDATE book_details
SET live = 1
WHERE ISBN13 = '(SELECT ISBN13 FROM book_details_old WHERE live = 1)';
ISBN13当前存储为一个字符串。
这应该是更新10k +行。
感谢,
威廉
是否可以使用子选择在mysql 5.0上运行UPDATE命令。使用另一个表中的数据更新mysql表
我想运行的命令是这样的:
UPDATE book_details
SET live = 1
WHERE ISBN13 = '(SELECT ISBN13 FROM book_details_old WHERE live = 1)';
ISBN13当前存储为一个字符串。
这应该是更新10k +行。
感谢,
威廉
只是痘痘变化,你得到它:
UPDATE book_details
SET live = 1
WHERE ISBN13 in (SELECT ISBN13 FROM book_details_old WHERE live = 1);
静态“1”不是根据请求从另一个表中获取数据。 – Leo 2013-10-01 12:14:43
这对于大型数据集来说不是很有用。 – BFWebAdmin 2017-11-01 09:47:28
UPDATE book_details AS bd, book_details_old AS old
SET bd.live=1
WHERE bd.isbn13=old.isbn13
AND old.live=1;
UPDATE table1 t1, table2 t2
SET t1.field_to_change = t2.field_with_data
WHERE t1.field1 = t2.field2;
这是更好的答案,以满足所有需求,非常感谢! – 2013-02-26 06:59:41
要更新数据从其它表格
UPDATE tab t1
SET t1.company_name = t2.company_name
FROM tab t2
WHERE t1.id = t2.id
要在其他表
UPDATE table1, table2 SET table1.field1 = table2.field1 where table1.id = table2.id
EX更新从数据的表。 UPDATE transaction, member SET transaction.Memberid = member.memberId WHERE transaction.CardId = member.CardId;
是的,这是可能的。关于这个[page](http://dev.mysql.com/doc/refman/5.0/en/update.html)的讨论应该有所帮助。 – 2009-01-05 23:05:31