是否可以使用子選擇在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