在postgres或bash控制台的循环内执行postgres查询命令?

时间:2018-07-15 19:18:29

标签: bash postgresql

我有一个Postgres表,我试图通过在单个列上进行过滤将其复制到组成部分的CSV中,假设它是“ category”,并且“ category”中的值是A-Z

我正在尝试执行以下命令:

\copy (select * from table where category = 'A') to '~/desktop/a.csv' with csv header

通过使用psql进入Postgres控制台然后执行查询,我可以一次性完成该操作。但是,现在我想对表中的每个唯一类别运行该查询,按类别值过滤并写入该名称的CSV。

我正在寻找有关如何在Postgres控制台中或作为bash脚本编写该循环的建议。拉取“ category”的唯一值并不难,因此,如果可以通过管道将其传递到我的psql控制台并将其写回到psql控制台,我可以进行一些操作,例如为类别中的每个项目编写带有for循环的bash脚本。 CSV。

感谢您的帮助!

0 个答案:

没有答案