0

我有一个这样的查询:

UPDATE table1 SET status = 'ANSWERED' WHERE table1.number IN (select table2.number from table2)

如果已经存在,它应该更新status为 ANSWEREDtable1.numbertable2.number

它需要永远,仍然挂着..

table1表中,300,000 行。

table2表中,24,000 行。

table1.number并且table2.number是唯一的数字。

如何提高性能?

4

1 回答 1

3

在 table1.number 和 table2.number 字段上创建索引并使用以下查询。

UPDATE table1 
       INNER JOIN table2 
               ON table1.number = table2.number 
SET    table1.status = 'ANSWERED' 
于 2012-06-11T13:28:45.097 回答