我有一个表x,其中包含字段a、b、c和d。我想做一个SELECT语句,它是GROUPED BY a HAVING a_particular_value = ANY (array_agg( b)) 并检索 a、MIN ( d) 和c<- 从中选择的行a_particular_value = ANY(array_agg(b))。这有点令人困惑。
让我试着解释一下。a_particular_value = ANY(array_agg(b))将从按 分组的所有记录中选择一些或一条记录a。我想c从导致条件为真的记录中检索 的值。虽然不过滤掉其他记录,因为我仍然需要其他聚合函数的记录,MIN(d).
我尝试进行的查询:
SELECT a, MIN(d) FROM x
GROUP BY a
HAVING 1 = ANY(array_agg(b))
唯一剩下要做的就是放入cSELECT子句。我该怎么做呢?