帮我看看sql语句的问题呀

SELECT eligrate,count(*)case when eligrate = 100 then ’100%’when eligrate is null then ‘数据缺失’when eligrate >= 1 and eligrate <= 99 then‘未达到100%’else‘全部数据’end 合格率标志FROM 表名group by case when eligrate = 100 then ’100%’when eligrate is null then ‘数据缺失’when eligrate >= 1 and eligrate <= 99 then‘未达到100%’else‘全部数据’end 合格率标志

FineReport 帆软用户PuLI1nixsF 发布于 2022-11-3 08:33
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
RiveryLv5中级互助
发布于2022-11-3 08:53

select  count(1) as 数量,        case when MD = 100 then '100%'  when MD >=1 and MD <= 99 then '未满100%'  when MD is null then '数据缺失'  else MD end as 合格率状态from TESTgroup by case when MD = 100 then '100%'  when MD >=1 and MD <= 99 then '未满100%'  when MD is null then '数据缺失'  else MD end   union all  select  count(*) as  数量,'全部数据' as 合格率状态 from TEST

最佳回答
0
用户y5617963Lv5见习互助
发布于2022-11-3 08:35

image.png这是不是该加一个逗号啊

最佳回答
0
CD20160914Lv8专家互助
发布于2022-11-3 08:36(编辑于 2022-11-3 08:38)

SELECT 

eligrate,

count(*) as 个数,

case when eligrate = 100 then '100%' when eligrate is null then '数据缺失'

when eligrate >= 1 and eligrate <= 99 then '未达到100%' else '全部数据' end 合格率标志

FROM 表名 

group by eligrate,

case when eligrate = 100 then '100%' when eligrate is null then '数据缺失'

when eligrate >= 1 and eligrate <= 99 then '未达到100%' else '全部数据' end

试一下这样?

  • 3关注人数
  • 293浏览人数
  • 最后回答于:2022-11-3 08:53
    请选择关闭问题的原因
    确定 取消
    返回顶部