【发布时间】:2014-10-24 00:57:34
【问题描述】:
我想选择一组行并将它们返回给客户端,但我也想只将结果集中的主键(整数 id)插入到临时表中,以供以后在同一事务中的联接中使用.
这是为了同步,其中后续查询往往涉及对先前查询结果的联接。
最有效的方法是什么?
我不愿执行两次查询,但如果将其添加到查询缓存中可能会很快。另一种方法是将整个结果集存储到临时表中,然后从临时表中选择。这似乎也很浪费(我只需要临时表中的整数 id。)如果有一个 SELECT INTO TEMP 也返回结果,我会很高兴。
目前使用的技术是在客户端构造一个整数 id 的数组,并在随后的 IN 查询中使用它。我希望有更有效的东西。
我猜它可以用存储过程来完成?但是有没有办法没有呢?
【问题讨论】:
标签: sql postgresql common-table-expression temp-tables