Retourne true si toutes les valeurs des colonnes sont remplies

Est-il un moyen plus rapide dans PostgreSQL pour essentiellement faire un si sur plusieurs lignes?

Dire que j'ai une table

ticket | row | archived
1      | 1   | true
1      | 2   | true
1      | 3   | true
2      | 1   | false
2      | 2   | true

Est-il un moyen que je pouvais faire une instruction if à travers le bas de la colonne où ticket = ?
De sorte que, lorsque ticket = 1 serait vrai, car

true && true && true = true

et où ticket = 2 serait faux car

false && true = false

Ou devrais-je simplement s'en tenir à

SELECT ( (SELECT COUNT(*) FROM table WHERE ticket = 1)
       = (SELECT COUNT(*) FROM table WHERE ticket = 1 AND archived = true) )

OriginalL'auteur mouckatron | 2012-10-22