【发布时间】:2017-08-17 14:04:51
【问题描述】:
Rookie 需要一点帮助。有人可以提供一个查询来轻松计数,然后按月份记录匹配两个条件的列表,以避免使用像这样笨拙的重复代码...
SELECT
SUM( CASE
WHEN extract( YEAR FROM `date` ) = "2017"
AND extract( MONTH FROM `date` ) = "07"
AND `conditionA` = "A"
AND `conditionB` = "B"
THEN 1 else 0 END )
AS 2017_07
SUM( CASE
WHEN extract( YEAR FROM `date` ) = "2017"
AND extract( MONTH FROM `date` ) = "08"
AND `conditionA` = "A"
AND `conditionB` = "B"
THEN 1 else 0 END )
AS 2017_08
SUM( CASE
WHEN extract( YEAR FROM `date` ) = "2017"
AND extract( MONTH FROM `date` ) = "09"
AND `conditionA` = "A"
AND `conditionB` = "B"
THEN 1 else 0 END )
AS 2017_09
FROM `datatable`
【问题讨论】:
-
请查看此链接(spaghettidba.com/2015/04/24/…) 了解更多关于如何改进问题和不要发布图片的信息
-
谢谢。我完全赞成提出更好的问题,但需要澄清一下我应该做些什么不同的事情。我的问题看起来很简洁,我发布了一个格式化的查询。我收到了一个直接的、准确的问题解决方案,尽管它是基本的。你是说我应该为这么简单的事情发布表格数据吗?
-
如果你可以看看我发布的链接,它对你有帮助..你没有发布任何表格数据,预期结果,当前结果
标签: sql count extract multiple-conditions