[英]Use a 'in' statement inside a 'case' expression
How can I use IN
in my "case expression"? 如何在“ case表达式”中使用
IN
?
This is my query where I want count if any match like mumbai
found then as mumbai
: 这是我的查询,我想如果算上任何比赛像
mumbai
然后发现为mumbai
:
select TYPEOFPRODUCT,
SUM(CASE(BRANCH) WHEN IN('Mumbai1' OR 'Mumbai2') THEN 1 ELSE 0 END) AS 'Mumbai'
SUM(CASE(BRANCH) WHEN IN('Delhi1' OR 'DelhiMain') THEN 1 ELSE 0 END) AS 'Delhi'
from los_ext
group by TYPEOFPRODUCT
You were close, you just need to comma separate values for IN
rather than using OR
, and there are two formats for CASE
expressions, putting the field with the criteria after WHEN
is more flexible, so I prefer to use it exclusively: 亲近了,您只需要用逗号分隔
IN
值而不是使用OR
,并且CASE
表达式有两种格式,将带有条件的字段放在WHEN
之后更加灵活,因此我更喜欢单独使用它:
SELECT TYPEOFPRODUCT
,SUM( CASE WHEN BRANCH IN('Mumbai1','Mumbai2') THEN 1 ELSE 0 END) AS Mumbai
,SUM( CASE WHEN BRANCH IN('Delhi1', 'DelhiMain') THEN 1 ELSE 0 END) AS Delhi
FROM los_ext
GROUP BY TYPEOFPRODUCT
Its query select sum of individual branchs 它的查询选择各个分支的总和
select TYPEOFPRODUCT,
SUM(CASE WHEN (BRANCH = 'Mumbai1' OR BRANCH = 'Mumbai2' ) THEN 1 ELSE 0 END) AS 'Mumbai',
SUM(CASE WHEN (BRANCH = 'Delhi1' OR BRANCH = 'DelhiMain' ) THEN 1 ELSE 0 END) AS 'Delhi'
from los_ext
group by TYPEOFPRODUCT
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.