2012-06-05 267 views
-2

我想使用case条件获取日期之间的值。在select语句中使用case条件

我有一个表名称用户和一个列日期,我想从数据库中使用日期condtion获取值。

select sum(visitor) AS V FROM user WHERE date < '21-05-2012' AND dDateTime > '11-05-2012' 
select sum(visitor) AS c FROM user WHERE date < '21-06-2012' AND dDateTime > '11-06-2012' 
select sum(visitor) AS s FROM user WHERE date < '21-07-2012' AND dDateTime > '11-07-2012' 
select sum(visitor) AS g FROM user WHERE date < '21-08-2012' AND dDateTime > '11-08-2012' 

如何在单个语句中进行整个查询。

+0

可以提供更清晰的画面??? –

+0

你的问题是什么?你有什么尝试?你卡在哪里?我们需要更多细节! – papaiatis

+0

请现在检查我已更新的问题 – riz

回答

1

这里有一个sum的例子有case内:

select sum(case when date < '21-05-2012' AND dDateTime > '11-05-2012' then visitor end) v 
,  sum(case when date < '21-06-2012' AND dDateTime > '11-06-2012' then visitor end) c 
,  sum(case when date < '21-07-2012' AND dDateTime > '11-07-2012' then visitor end) s 
,  sum(case when date < '21-08-2012' AND dDateTime > '11-08-2012' then visitor end) g 
from user