MySQL的case when 分段统计无结果,请问该怎么解决呢? 10C

图片说明1为什么都是0呢,是不是case when 的条件不对?
2该怎么解决呢?

0

9个回答

 case money when

改成

case when

1

sql贴出来,要不怎么看

0
csdncooker
csdncooker 抱歉,没有上传图片。。。。
大约一年之前 回复

检查你的SQL是不是有问题?

0
csdncooker
csdncooker 图片没有上传成功。。。
大约一年之前 回复

这个是你的逻辑写错了,你在分组之前就应该用case when的,不然你这个max是没有任何用处的

0
mango_love
mango_love 你最好是把这个sql内部先执行,看看是否有数据或者查询结果异常
大约一年之前 回复

1 先把from里面的语句执行下看看结果
2如果没错看看money字段是不是字符串类型
希望对你有帮助!

0

CASE WHEN XXX THEN XXX WHEN XXX THEN XXX ELSE XXX

0

看看你的sql语句是否有错,分组之前就应该用case when的,不然你这个max是没有任何用处

0

按金额进行分级应该不需要使用max函数,直接用case when就可以了

0

建议看下case when 的用法:
1.
case money when 100 then 'money等于100'
case money when 200 then 'money等于200'
else 'money不等于100 和 200'
end

  1. case when money > 100 then 'money大于100' case when money > 200 then 'money大于200' else 'money小于等于100' end
0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
查询各个成绩段的人数 case when 用法
SELECT count( 1 ) AS Num, CASE WHEN price IS NULL THEN 'no_score' WHEN price < '60' THEN '不及格' WHEN price BETWEEN '60' AND '80' THEN '良好' WHEN price BETWEEN '81' AND '90' THEN '优秀' ELSE...
Oracle分组分段统计-sum+case when+group by使用实例
 实例演示:   (1)查询表users中的数据。   select u.id,u.realname,U.SEX from users u;   查询结果如下   ID    REALNAME SEX  1  10082 松XX  2  10084 林XX     1  3  10087 西XX  4  10100 胡XX  5  10102 龙XX     1  ......   (...
SQL中case when子句的使用(连续变量的区间分段统计场景)
某院系2018年计划举办为期一周的学生电竞通关能力预测比赛。现已进入决赛,有6位选手入围。要求根据给定的两张表如下所示: UserUser表( user_id int,—用户ID user_name varchar(50),—用户姓名 user_type int—用户类型 ) Game_detail表( day_id date,—玩游戏的日期 user_id int,—用户ID game_id i...
利用case when 分组统计
select 单位,count(*) from (select ( case          when substr(DEPT_CODE,0,2) = 'CT' THEN DEPT_CODE         when substr(DEPT_CODE,0,2) = 'PF' THEN DEPT_CODE         when substr(DEPT_CODE,0,2) = 'CQ' THE...
几条sql语句:统计不重复个数、存在更新不存在插入、case when用法
select count(*) from (select distinct UC_FileHash from tbl_HashSortInfo1 as temp) temp 使用distinct去除重复,统计某一个字段值出现的个数 IF EXISTS (SELECT * FROM tbl_UploadContent_tmp WHERE ID=888) BEGIN update tbl
【统计】SQL之case when then else end用法(用于分类统计)(一)
case具有两种格式。简单case函数和case搜索函数。--简单case函数 case sex when '1' then '男' when '2' then '女’ else '其他' end --case搜索函数 case when sex = '1' then '男' when sex = '2' then '女' else '其他' end 这两种方式,...
Mysql中sum(N)配合case when统计数据
需求是统计表里面打折并且是热门的条数表中有两个字段 是否打折is_discount,是否热门is_hot,需要统计这两个字段都满足的数据条数,用count是不能count两个字段的这里可以用sum统计,并且配合case when,可以统计多个字段条件满足的数量sum(case when is_discount='1' and is_hot='1' then 1 else 0 end) as TOT...
mysql-函数CASE WHEN 统计多个字段
case when语句,用于计算条件列表并返回多个可能结果表达式之一。CASE 具有两种格式:1.when when_expression,是使用简单 CASE 格式时所计算的表达式。Input_expression 是任何有效的SQL表达式。2.when Boolean_expression,使用 case 搜索格式时所计算的布尔表达式。boolean_expression 是任意有效的布尔表达式。esle else_result_expression:当比较运算取值不为 TRUE 时返回的表达式。如果省
mysql case when 统计某字段不同值的数量
select COACH_NAME,sum(case when STATE=0 then 1 else 0 end) as ‘0’,    sum(case when STATE = 1 then 1 else 0 end) as ‘1’ ,    SUM(case when STATE = 9 th...
分时间段统计(case + group by)
http://www.cnblogs.com/qiantuwuliang/archive/2009/06/03/1495770.html
MySQL数量查询(Case When 应用)
1.单表查询 员工表empinfo结构如下: create table empinfo( Fempno varchar(20) not null primary key, Fempname varchar(20) not null, Fage number not null, Fsalary number not null ); 假设该表有大于1000万条记录;写一个最高效的S
MySQL语句 - case when 分类汇总
select 中使用case when 说明:select 中 结合 聚合函数、group 使用case when 语法:case when $condition then $deal else $deal end alias 使用:SELECT gender, sum(case when sex = 1 then 1 else 0 end) as men ,sum(case wh...
当case when then else end 语句遇上sum或count等统计函数
事情是因为这样了——我需要按2个维度来分组,求出按这2个维度分组的总数情况(count),但同时也需要在这2个维度下求出按不同条件得出的总数,这些不同条件下分别得出的总数相加的和即为不加上条件的情况下的总数。比如: 假设有一张tablename表格,数据结构如下:    字段: id  A   B    condition2 SELECT COUNT(1) cnt, A,
通过SQL case when语法实现统计SQL的纵表转横向
需求描述:       有一张业绩统计表(t_user_performance),表结构如下: 人员ID user_id 业绩类型 performance_type 业绩金额 performance_value 时间 create_date
oracle sum case when group by,同时使用,实现分组统计
如,我希望统计users表中每个创建者创建的男性、女性、无性别的用户总数(数据表中有一个字段creator_id,表示创建者的ID),语句如下: select u.creator_id 创建者ID, sum( case u.sex when 1 then 1 else 0 end) 男性, sum( case u.sex when 2 then 1 else 0 end) 女性, sum( cas
groupby + case when 一次统计所有你想统计的内容
 首先建库建表(因为没有用过本地数据库,这里重新建表建库。 create databases guo_shop; use guo_shop; create table buy_shop(name varchar(12) not null, things varchar(30) not null, primary key(id)); 第二步插入数据 insert into buy_shop...
用sum case when做分类统计sql优化
背景:本来一个页面涉及到多个类别的统计,最初的代码是每一个类别做一个sql来count出数目,可想而知,最后的加载速度和体验都是不好,能明显感觉至少5、6秒甚至更多的响应时间 之前的代码: //136集团客户故障分析统计 public List getGroupAnalysisCount(String nowmonth) throws WMSException { // 按136客户名称
Mysql case when的使用, 按天分组,统计crowd表,每天的完成人数
SELECT c.aid activity_id, DATE_FORMAT(c.createdate, '%Y%m%d') statistics_date, COUNT(c.id) total, SUM( CASE WHEN ( ( IFNULL(c.points, 0) + IFNULL(c.money, 0) + IFNULL(c.cashcoupon, 0) ) / a.pri
用sql语句实现年龄分段统计
SELECT CASE WHEN (age >= 10 AND age <= 20) THEN '10-20' WHEN (age >= 21 AND age <= 30) THEN '21-30' ELSE '30-' END 'eag_layer', count(*) emps FROM address_book GROUP BY CASE WH
mysql case ... when语句的几个用法
一般情况下,case ...when都用在select语句中,不过可以在其他子句中使用 1 在order by子句中进行自定义排序 [code=&quot;sql&quot;] show create table 20130225t1; CREATE TABLE `20130225t1` ( `id` tinyint(4) NOT NULL AUTO_INCREMENT, `b` char(1) ...
SQL COUNT +Case When Then+IFNULL多条件判断实现多条件复杂统计
基础知识 COUNT()函数 函数返回匹配指定条件的行数。 SQL COUNT() 语法 SQL COUNT(column_name) 语法 COUNT(column_name) 函数返回指定列的值的数目(NULL 不计入): SELECT COUNT(column_name) FROM table_nam SQL COUNT(*) 语法 COUNT(*) 函数返回表中的记录数...
mysql 分组、 操作查询结果case when then else end用法举例
Case具有两种格式。简单Case函数和Case搜索函数。  --简单Case函数  CASE sex           WHEN '1' THEN '男'           WHEN '2' THEN '女'  ELSE '其他' END  --Case搜索函数  CASE WHEN sex = '1' THEN '男'           WHEN sex = '2' TH
mysql操作查询结果需要使用查询表的字段定义类型来查询不同表的字段时,可以使用case when then else end来解决
        mysql操作查询结果需要使用查询表的字段定义类型来查询不同表的字段时,可以使用case when then else end来解决Case具有两种格式。简单Case函数和Case搜索函数。 --简单Case函数 CASE sex          WHEN '1' THEN '男'          WHEN '2' THEN '女' ELSE '其他' END --Case搜索...
报表统计中group by 和case when 用法小结(统计某一字段不同值出现的频次)
A、case when先从最简单的case when讲起 1、先从最简单的case when讲起 2、有多个字段需要判断的case when B group by 的用法 1、单个字段的group by select dev_bank ,count(dev_code) 数量 from dev_bmsg group by dev_bank 我们可以看到,字段dev...
Mysql系列课程--第五章 高级查询 表连接 子查询 case when
一.表连接1.内连接1.1等值内连接 /李文辉是哪个班的/select s.s_name,c.c_name from student s inner join class c on s.c_no = c.c_no where s.s_name='李文辉';(第一种写法) select s.s_name,c.c_name from student s,class c where s.c_no = c
case when语句的报错问题
` 直接说明问题。我有一张存储身份证号码的表id_card_message,表结构和数据如下: mysql&amp;amp;gt; select * from id_card_message; +------+--------------------+ | id | id_card_no | +------+--------------------+ | 1 | 342513199...
MySQL中使用case when 语句实现多条件查询的方法
SELECT * FROM wqgj WHERE ((SELECT CASE 1 WHEN condition1满足条件 THEN 1 ELSE 0 END FROM wqgj) +(SELECT CASE 1 WHEN condition2满足条件 THEN 1 ELSE 0 END FROM wqgj) +(SELECT CASE 1 WHEN condition3满足条件 THEN 1
分享一个mysql中用case-when排序的方法实例
case-when用法有很多中,再此分享一种你可能不知道的但很实用的方法。如想详细了解case-when所有用法,请自行查阅资料。之前写一个需要用到排序的需求,对表排序筛选,选出来的数据立即处理。主要业务点:客户有1,2,3,4,5,6等级别,1-4级为一组,5,6级为一组,5-6级的优先处理,之后在处理1-4级。最早我写了一个子查询,将1-4归为一类,5,6归为一类,在排序,能实现需求,但性能不...
mysql 用case when 解决比较时间大小后在排序的问题
用sql 解决比较时间大小后再排序的问题 case when 1 :useTime 的后三天24点 当天算第一天 case when 2: CreateTime 前三天 0点 当天算第一天 select *, (case when ( ) then 1 when ( ) then 2 else 3 end) csort from XX 表 order by
oracle case when 查询各个部门不同工资阶段的人数
select d.deptName,e.level1,e.level2,e.level3 from (select deptId,count(case when wage &amp;lt; 5000 then 1 else null end ) level1,count(case when wage &amp;gt;=5000 and wage &amp;lt;15000 then 1 else null end ) ...
MYSQL5下查询语句CASE WHEN 子查询的使用
SQL语句如下:根据表中某个字段的值 来进行判断,分别查询B表或C表中的字段值。select supplier.supplier_account,quot.quote_id,quot.master_id,quot.quote_Type,quot.supplier_id ,quot.attach_files_ids,quot.create_time,purchase.purchase_title,purchase.purchase_about,purchase.psort_Id ,(case whe
MySQL 之 CASE WHEN 的使用方法
Case具有两种格式。简单Case函数和Case搜索函数。 --简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END --Case搜索函数 CASE WHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' ELSE '其他' END 这两种方式,可以实现相同的功能。简单
MySQL数据库 null转为0,及一些case when用法
1、如果为空返回0select ifnull(null,0)应用情景,如果在进行右连接或者左连接时,有一些为空的字段,可以进行这样的处理。 select ifnull( (B.submission_time-A.submission_time),0) from A right join B on 条件。2、如果为空返回0,否则返回1select if(isnull(col),0,1) as
写sql语句统计各个学生各科成绩(case when用法)
有如下一张表score: 建表语句: CREATE TABLE `score` (`id` int NOT NULL AUTO_INCREMENT ,`name` varchar(20) NOT NULL ,`category` varchar(20) NOT NULL ,`score` int NOT NULL );         现在要去查询学生的各科成绩和总分,...
SQL count和case when配合统计给定条件下不重复的记录数
Iamlaosong文 1、我们知道,SQL语句中用count函数统计记录数量,配合distinct关键字可以统计非重复的记录数量。例如: select count(*), count(city_name), count(distinct city_name) from tb_county  查询结果是: 2534 2534 363 增加查询条件可以查询不同条件下记录的数量,例
MySQL中的case when then end中对于NULL值判断容易犯错的地方
sql中的case when 有点类似于Java中的switch语句,比较灵活,但是在Mysql中对于Null的处理有点特殊,之前被这个问题困扰过,这次又被困扰了,好记性不如乱笔头,还是记一下印象会深刻一点。Mysql中case when语法: 语法1: CASE case_value WHEN when_value THEN statement_list [WHEN whe...
case乱码解决
mysql 中case when 遇到乱码解决。查询语句中含有case引起中文乱码解决方法
ORACLE 分类统计符合各个条件的个数 (case when 的用法)
假如数据量很大约1000万条;写一个你认为最高效的SQL,用一个SQL计算以下四种人: fsalary>9999 and fage > 35 fsalary>9999 and fage fsalary 35 fsalary 每种员工的数量; select sum(case when fsalary > 9999 and fage > 35then 1else 0end) as "fsalary>
MySQL语句使用(一)case when then else end 的用法
select c.*from programme c, live lwhere (case when c.update_time &amp;gt;= c.end then c.update_time else c.end END)&amp;lt;![CDATA[&amp;lt;]]&amp;gt; #{now}and (case when c.update_time &amp;gt;= c.end then c.update_time ...
MySQL 的CASE WHEN 语句使用说明
case when语句,用于计算条件列表并返回多个可能结果表达式之一。 CASE 具有两种格式: 一、简单 CASE 函数将某个表达式与一组简单表达式进行比较以确定结果。语法 简单 CASE 函数:CASE input_expression WHEN when_expression THEN result_expression [ ...n ] [
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 java怎么学习呢 该怎么学习python