好吧,我正在尝试做的是根据不同的标准在同一个表上执行不同的COUNT(),而不使用嵌套查询(效率)或子查询(因此可以将其作为视图).这可能吗?
示例:表具有日期列 - 查询应该能够生成在常量日期之前和之后的行数.
Bil*_*win 31
你正在使用MySQL,所以你可以利用它的特性,布尔表达式的计算结果为0表示假,1表示真.的SUM()1代的的是等于一个COUNT()其中表达式为真.
SELECT SUM( date_column < '2009-08-21' ) AS prior_to_date,
SUM( date_column > '2009-08-21' ) AS after_date
FROM MyTable;
Run Code Online (Sandbox Code Playgroud)
PS:不要在支持SQL标准行为的其他品牌数据库上尝试这一点,即布尔表达式产生布尔值,而不是0或1整数.
| 归档时间: |
|
| 查看次数: |
8839 次 |
| 最近记录: |