我是 postgresql(和一般数据库)的新手,希望能获得一些关于提高以下语句效率的指示。
我正在将数据从一个表插入到另一个表,并且不想插入重复值。我有一个被索引并且是主键的摆脱(每个表中的唯一标识符)。
我目前正在使用以下语句:
INSERT INTO table1 SELECT * FROM table2 WHERE rid NOT IN (SELECT rid FROM table1).
截至目前,表一是 200,000 条记录,表 2 是 20,000 条记录。Table1 将继续增长(可能达到 2,000,000 条左右),而 table2 将保持在 20,000 条左右的记录。截至目前,该语句运行大约需要 15 分钟。我担心随着 Table1 的增长,这将需要很长时间。有什么建议么?