【问题标题】:counting rows returned in postgresql计算 postgresql 中返回的行数
【发布时间】:2011-03-02 08:57:12
【问题描述】:

我需要计算从数据库返回的行数。使用以下代码

rv = plpy.execute("SELECT * FROM AA where name = 'active '") 
rv[0]["id"] 

在返回一些值时有效,但我需要检查是否没有返回值:有人可以帮忙吗。

【问题讨论】:

  • 这可能有助于强调这是 PL/Python。

标签: python sql postgresql rowcount


【解决方案1】:

你为什么不检查 rv 数组的大小?

【讨论】:

  • 我对 postgresql 还很陌生,请告诉我如何检查 rv 数组的大小。这将不胜感激。谢谢。
  • 这与 postgres 无关,它是标准的 python 语法。
【解决方案2】:

你为什么不使用 -

SELECT Count(*) as rowCount FROM AA where name = 'active'

这将返回查询的行数。如果没有行,则返回 0。

【讨论】:

  • 因为他希望得到的不仅仅是计数。另外需要知道是否有任何结果。使用您的方法需要 2 次查询。
【解决方案3】:

在PL/Python中,获取结果大小的方式是

rv.nrows

请参阅documentation

【讨论】:

    【解决方案4】:

    【讨论】:

    • 这在 DB-API 中是正确的,但在 PL/Python 中不正确,这正是这里使用的。
    猜你喜欢
    • 1970-01-01
    • 2015-08-15
    • 1970-01-01
    • 2021-06-04
    • 2020-01-18
    • 1970-01-01
    • 2013-10-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多