我想知道是否有一种方法可以使用一个查询从表中获取两个单独的“计数”总数?也就是说,使用类似于以下表格的表格,我想检索每个代码(不同)并显示不等于X或D的状态的总数,并且有一个额外的列,显示状态等于X或D且取消日期大于给定日期(比如最近14天)的总数。
表格:
表格:
Code: Status Cancel_Date
-----------------------------------
AAA X 2012-02-01
AAA
BBB X 2012-02-01
AAA D 2012-01-01
AAA
BBB
BBB D 2012-02-01
BBB X 2012-01-01
根据上述数据,示例结果如下:
Code: TotalNotXorD TotalXorD
------------------------------------
AAA 2 1
BBB 1 2
TotalNotXorD: 例如
select code, count(*)
from table
where status not in('X','D')
group by code
TotalXorD: 例如
select code, count(*)
from table
where status in('X','D')
and cancel_date >= '2012-02-01'
group by code
我尝试过使用子查询等方法,但似乎无法得到所需的结果。
有什么想法吗?
谢谢。