【问题标题】:Postgres Aggregator which checks for occurrencesPostgres 聚合器,用于检查事件
【发布时间】:2013-03-20 15:07:32
【问题描述】:

是否存在这样的 Postgres 聚合器,当用于下表时:

 id | value 
----+-----------
  1 |     1
  2 |     1
  3 |     2
  4 |     2
  5 |     3
  6 |     3
  7 |     3
  8 |     4
  9 |     4
 10 |     5

在如下查询中:

select agg_function(4,value) from mytable where id>5

会回来

agg_function
--------------
t

(布尔真结果)因为选择了 value=4 的一行或多行?

换句话说,一个参数指定您要查找的值,另一个参数采用列说明符,如果列值等于一行或多行的指定值,则返回 true?

我已经成功地创建了一个聚合来做到这一点,但我想知道我是否刚刚重新创建了轮子......

【问题讨论】:

    标签: sql postgresql-9.0


    【解决方案1】:
    select sum(case when value = 4 then 1 else 0 end) > 0
    from mytable
    where id > 5
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多