【问题标题】:Get the count of rows from a COPY command从 COPY 命令获取行数
【发布时间】:2013-05-17 22:11:51
【问题描述】:

当从文件中复制数据时,你会在 psql 中使用“命令标签”获取行数:

db=# COPY t FROM '/var/lib/postgres/test.sql';
COPY 10

我需要行数,并希望避免在桌子上出现多余的count()。

有没有办法直接在 PL/pgSQL 函数中从 COPY 获取此计数?
据我所知没有,但也许我错过了什么?

对于 PostgreSQL 9.2。但是任何版本中的任何选项都会引起人们的兴趣。

【问题讨论】:

    标签: postgresql count plpgsql sqlbulkcopy


    【解决方案1】:

    PG 9.2 中没有,但 PG 9.3 中由 Pavel(E 1.3.1.7)提供:

    允许 PL/pgSQL 访问由 COPY (Pavel Stehule) 处理的行数

    命令是 GET DIAGNOSTICS x = ROW_COUNT。

    http://www.postgresql.org/docs/devel/static/release-9-3.html

    【讨论】:

    • 正中目标,先生!向帕维尔致敬!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-03
    • 1970-01-01
    • 1970-01-01
    • 2018-07-20
    • 2014-06-12
    • 1970-01-01
    • 2021-01-04
    相关资源
    最近更新 更多