【问题标题】:SELECT COUNT sql function in postgres always errors out, non-SETOFpostgres中的SELECT COUNT sql函数总是出错,非SETOF
【发布时间】:2018-08-09 19:12:36
【问题描述】:

我一直试图在 postgres 中将 sql count 函数作为 INTEGER 返回,但它总是返回以下错误 ERROR: current transaction is aborted, commands ignored until end of transaction block。我已经尝试了以下查询及其变体,但总是导致同样的失败。

我也看到了cannot use RETURN QUERY in a non-SETOF function

CREATE OR REPLACE FUNCTION "GetUser"(
  "@id"            UUID
)
RETURNS INTEGER AS
$func$
BEGIN
  RETURN (
    SELECT COUNT("id")
    FROM "users" as u
    WHERE u."id" = "@id"
 );
END;
$func$ LANGUAGE PLPGSQL;

【问题讨论】:

  • “错误:当前事务被中止,命令被忽略,直到事务块结束”如果在事务中发生错误,导致它被中止,当您尝试在执行 @987654324 之前执行其他命令时@。你的功能看起来不错。所以我怀疑CREATE FUNCTION语句之前的某个地方有错误。

标签: sql postgresql function count


【解决方案1】:

它现在正在工作。我认为问题在于它与另一个同名功能相冲突。但我也刷新并重新启动了所有内容,所以我不能保证这是解决方案。

不过现在确实可以了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-11-13
    • 1970-01-01
    • 2013-04-10
    • 2016-10-26
    • 2013-07-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多