2
A
回答
4
您不能使用SUM(DATA),但可以將值(見下面)轉換爲int(0 = false,1 = true)。然而,使用EXISTS(...)可能會更有效率,特別是如果您對TRUE值的數量不感興趣。
create table test(data boolean);
insert into test values(true), (false);
select sum(cast(data as int)) from test;
select exists(select * from test where data);
1
爲了知道是否有至少1真值:
select sum(cast(data as int)) > 0
這比越好存在解決方案,因爲它可以被嵌入到一個大的查詢,可能通過與其它其中含有基團子句
4
有幾個布爾特定aggregate functions您可以使用:bool_and
,bool_or
,every
。
在您的特殊情況下,您需要bool_or
聚合。
查詢是如此簡單:
SELECT bool_or(my_column) FROM my_table
相關問題
- 1. postgreSQL選擇未在聚合函數中使用的其他列
- 2. PostgreSQL選擇和聚合
- 3. 選擇與聚合函數
- 4. PostgreSQL的聚合函數選擇2個對應的字段
- 5. PostgreSQL - GROUP BY子句或在聚合函數中使用
- 6. ActiveRecord/PostgreSQL - GROUP BY子句或在聚合函數中使用
- 7. PostgreSQL:如何選擇非聚合列?
- 8. 聚合函數像postgresql中的字符
- 9. postgresql中的multiply(num)聚合函數
- 10. 更新與聚合函數和選擇
- 11. 選擇和聚合函數的代價
- 12. 選擇「日期」與聚合函數
- 13. 聚合函數的選擇結果
- 14. SQL Server和聚合函數選擇
- 15. MYSQL數組聚合函數像PostgreSQL array_agg
- 16. PostgreSQL - group by子句或用於聚合函數中(錯誤)
- 17. 如何聚合布爾列
- 18. 選擇並選擇計數(聚合和非聚合在同一查詢中)
- 19. Postgresql嵌套的聚合函數
- 20. postgresql corr聚合函數返回null
- 21. PostgreSQL - 具有聚合函數的查詢
- 22. Postgresql:模態共享聚合函數
- 23. BigDecimal或SQL聚合函數?
- 24. Java Mongo聚合或函數?
- 25. PostgreSQL中的聚合函數將數組傳遞給C函數
- 26. 關係代數中的選擇子句中的聚合函數
- 27. 返回布爾函數調用它 - Javascript /聚合物
- 28. PostgreSQL選擇INTO函數
- 29. PostgreSQL:列必須出現在GROUP BY子句中或用於聚合函數中
- 30. 在PostgreSQL的Case語句中使用聚合和布爾值時遇到問題
被精確地:選擇存在(來自測試選擇*,其中數據=「真」); 它的工作原理!感謝您的回覆。 – gohohgle 2010-09-14 11:06:27