【发布时间】:2012-10-12 11:32:51
【问题描述】:
在 PostgreSQL 中是否有一种更快的方法来本质上对多行执行 if 操作?
假设我有一张桌子
ticket | row | archived
1 | 1 | true
1 | 2 | true
1 | 3 | true
2 | 1 | false
2 | 2 | true
有什么方法可以在 ticket = 的列下方做一个 if 语句? 因此,其中票 = 1 将是正确的,因为
true && true && true = true
其中ticket = 2 会是假的,因为
false && true = false
或者我应该坚持
SELECT ( (SELECT COUNT(*) FROM table WHERE ticket = 1)
= (SELECT COUNT(*) FROM table WHERE ticket = 1 AND archived = true) )
【问题讨论】:
标签: sql postgresql aggregate-functions exists boolean-logic