我有以下INSERT:
INSERT INTO "Positions"
(SELECT source_id, (r1.cd).x, (r1.cd).y, (r1.cd).z FROM
(SELECT source_id, stars_icrs2gcrs(ra, "dec", r_est) AS cd
FROM "StarsWithDistance"
)
AS r1);
SELECT返回大约13亿行。如果我放一个LIMIT子句有效,那么Positions表会更新。因此,INSERT为书面作品。但是,如果我让它在所有行上进行,它会成功完成,但是Positions表为空。
处理这种INSERT的最好/最优雅的方法是什么?我在这里并不真正在意性能,此INSERT将执行一次,以后再也不会执行。显然,我不希望花数周时间!但是一天不是问题。按照现在的说法,这需要3个小时。