> Andreas Tille <andreas(at)an3as(dot)eu> hat am 24. Januar 2016 um 17:16 geschrieben:
>
>
> Hallo,
>
> angenommen ich habe eine Tabelle
>
> name | eigenschaft
> --------+----------------
> a | x
> a | y
> b | y
>
> und ich suche die Spalten, die nur die Eigenschaft 'y' nicht aber 'x'
> haben - also die Ergebnismenge soll (b,y) sein. Die Tabelle ist real
> natürlich größer und hat auch mehr als zwei Eigenschaften.
test=*# select * from foo;
name | eigenschaft
------+-------------
a | x
a | y
b | y
(3 rows)
test=*# select name, array_agg(eigenschaft) from foo group by name having
array_agg(eigenschaft) = array['y'];
name | array_agg
------+-----------
b | {y}
(1 row)