2017-10-20 81 views
0

在WITH RECURSIVE查询中,是否可以像使用INSERT INTO一样使用COPY TO?Postgresql WITH RECURSIVE COPY到

我想从递归查询写入文件,而不必先将它保存到表中。

+0

请** [编辑] **你的问题,并添加一些[样本数据(http://plaintexttools.github.io/plain-text-table/ )和基于该数据的预期产出。 [**格式化文本**](http://stackoverflow.com/help/formatting)请,[**没有屏幕截图**](http://meta.stackoverflow.com/questions/285551/why-may -i-不上传图像-的代码上那么当灰化-A-问题/ 285557#285557)。 ** [**]您的问题 - 请勿**在论坛中发布代码或其他信息。 –

回答

3

知道为什么没有,例如:

t=# copy (WITH RECURSIVE t(n) AS (
    VALUES (1) 
    UNION ALL 
    SELECT n+1 FROM t WHERE n < 100 
) 
SELECT sum(n) FROM t) to '/tmp/rc'; 
COPY 1 
Time: 5.161 ms 
t=# \! cat /tmp/rc 
5050 
+1

我认为OP *可能会尝试使用CTE内部的COPY。但如果不是,这是一个体面的尝试来回答一个非常模糊的问题。 – IMSoP

+0

hm ...在这种情况下,它会采取动态plpgsql我猜...但为什么CTE?嗯 - 让我们看看什么OP说:)好点 - 但我重读OP - 是的,它definetely可能是请求 –