mdsk.net
当前位置:首页 >> sum CAsE whEn >>

sum CAsE whEn

你是要按月分和销售人员来对销售额透视,而sql语句只对月份分组,正确结果应该增加分组维度 select月份,sum (case when 销售人员='姓名1' then 销售数量*产品单价 else 0 end) as 姓名1销售额,sum (case when 销售人员='姓名2' then 销售数量*产...

CASE WHEN price

`oid` bigint(20) NOT NULL, `o_source` varchar(25) DEFAULT NULL COMMENT '来源编号', `o_actno` varchar(30) DEFAULT NULL COMMENT '活动编号', `o_actname` varchar(100) DEFAULT NULL COMMENT '参与活动名称', `o_n_channel` int(2) DEFAUL...

select sum(case when A.CLOSE_ID='T' then 1 else 0 end) from (select distinct A.CLOSE_ID,A.MO_NO from A) T '完成种数'=COUNT(CASE WHEN A.CLOSE_ID='T' THEN A.MO_NO ELSE 0 END)这句的逻辑就有问题,你要求A.CLOSE_ID='T' 时, A.MO_NO ...

把你的表名换成你自己的表名 DECLARE @sql AS VARCHAR(4000)=''SELECT @sql=@sql+'SELECT date0 'SELECT @sql=@sql+',SUM(CASE WHEN type='+type+' THEN num END)AS ''num_'+type+''''FROM 表名 GROUP BY typeSELECT @sql=@sql+' FROM 表名 GROU...

当case 子句的条件未包括所有的取值情况,会出现null值。 例:select case when a >1 then A,when a=1 then b end 那么当 a< 1 时,语句中未指定取值,则返回 null值。

提供表结构,查询要求。看看我能不能帮你。 你给我的语句按如下调整,写成这样: SELECT b.Group_Id, sum(CASE WHEN TRIM(a.Op_Code) = '1000' OR TRIM(a.Op_Code) = '1002' THEN 1 ELSE 0 END) "1|开户", sum(CASE WHEN TRIM(a.Op_Code) = '111...

这个是不是你数据里就没男的啊? 或者是你男的数据上带空格了还是什么原因 sum(case trim(sex) when '男' then 1 else 0 end) male, sum(case trim(sex) when '女' then 1 else 0 end) female 加个trim函数试试,这个是去空格的

例如一个3条件取值的字段: case when 条件1 then 取值1 when 条件2 then 取值2 else 取值3 end when后接条件语句,then后为字段取值(数值或字符串等都可以,但类型须一致)。 这篇博客写的比较详细,希望对您有用。网页链接

如果是判断null ,需要使用 is null 进行判断。 case when a is null then '' else a end case when a is not null then a else '' end

网站首页 | 网站地图
All rights reserved Powered by www.mdsk.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com