myCol
------
true
true
true
false
false
null
Run Code Online (Sandbox Code Playgroud)
在上表中,如果我这样做:
select count(*), count(myCol);
Run Code Online (Sandbox Code Playgroud)
我明白了 6, 5
我得到5因为它不计入null条目.
我如何计算真值的数量(示例中为3)?
(这是一个简化,我实际上在count函数中使用了一个更复杂的表达式)
编辑摘要:我还想在查询中包含普通计数(*),因此不能使用where子句
PostgreSQL 有聚合表达式,例如count(*) FILTER (WHERE state = 'success'). 如何使用 SQLAlchemy 生成此类表达式?