MySQL 百分比排序

需求:统计比率然后进行排序

SQL:

-- 计算结果保留两位小数 再拼接'%'
CONCAT_WS('',TRUNCATE( 计算结果, 2), '%') resultRatio,

现象:

# 比率
001 6.25%
002 16.66%
003 10.09%
004 0.00%

原因:

MySQL 将该列当成字符串来处理,对比的不再是数值
001的比率第一位是6 > 002的第一位数:1 > 004 的第一位数:0

解决思路:

-- 将原来的统计列在加一行统计,不带'%'
-- 原本
CONCAT_WS('',TRUNCATE( 计算结果, 2), '%') resultRatio,
-- 新增
TRUNCATE( 计算结果, 2) resultRatioSort,-- 多字段排序时
<if test="orderField != null and orderField != '' and orderType != null and orderType != ''"><choose><when test="orderField == 'overTimeRatio'">--  如果是页面展示的那一列,则指定为不带%排序ORDER BY resultRatioSort${orderType}</when><otherwise>--  如果不是百分比那一列,则使用传参列ORDER BY ${orderField} ${orderType}</otherwise></choose>
</if>

MySQL 百分比排序相关推荐

  1. mysql unoin排序

    unoin字句需要加limit,否则排序无效: (select * from tbl where a = 1 order by num desc limit 999999) union (select ...

  2. mysql 分组排序取前n_mysql分组排序取前N条记录的最简洁的单条sql ! | 学步园

    -- mysql分组排序取前N条记录的最简洁的单条sql. use test; drop table if exists test; create table test ( id int primar ...

  3. MySQL || 结果排序--聚集函数讲解

    MySQL 结果排序-- 聚集函数 一.环境准备 二.查询结果排序 三.查询的分组与汇总 3.1.查一下 学生们平均年龄 3.2.查一下总人数是多少 3.3.查一下每个年龄有多少人 3.4.查出最大年 ...

  4. MYSQL自定义排序

    下面是本人关于mysql 自定义排序(field,INSTR,locate)的一点心得,希望对大家有所帮助 首先说明这里有三个函数(order by field,ORDER BY INSTR,ORDE ...

  5. java 索引排序_Java培训MySQL之排序分组优化索引的选择

    索引的选择 ①首先,清除emp上面的所有索引,只保留主键索引! drop index idx_age_deptid_name on emp; ②查询:年龄为30岁的,且员工编号小于101000的用户, ...

  6. mysql 组内排名_【原】MySQL分组排序(包含组内排名、求中位数)

    需求:mysql分组排序,1.取最大(小)前N位,2.取中位数 本例以shop_id和cat_id字段共同分组,并对最细粒度的分组cat_id降序排列 原始表: 2.mysql分组排序(含组内排名) ...

  7. Mysql 的 排序分组优化

    Mysql 的 排序分组优化 where 条件和 on的判断这些过滤条件,作为优先优化的部门,是要被先考虑的!其次,如果有分组和排序,那么也要考虑grouo by 和order by. 1. 无过滤不 ...

  8. mysql join 排序_MySQL查询优化:连接查询排序limit(join、order by、limit语句)

    本文链接:https://blog.csdn.net/xiao__gui/article/details/8616224 不知道有没有人碰到过这样恶心的问题:两张表连接查询并limit,SQL效率很高 ...

  9. JAVA百分比排序方法实现

    最近遇到一个百分比排序的功能实现,本人也是搜了好多没有搜索的相关的.原因:百分比的那个属性为String类型,所以stream流的方式是实现不了的 下面给你们附上源码参考: 在这里插入代码片 ```L ...

  10. mysql自动排序_mysql自动排序

    最近在写一个项目,在项目中有一个要求是按照指定的用户指定顺序,对数据进行排序!网上百度了一下,感觉还是挺有用的,但是不是很清楚工作原理! mysql的field()函数 filed(s,s1,s2.. ...

最新文章

  1. 关于SQLServer2005的学习笔记——XML的处理
  2. 控件无法安装,windows已经阻止此软件因为无法验证发行者
  3. hdu 携程全球数据中心建设 (球面距离 + 最小生成树)
  4. struts2相对路径解释
  5. 【JavaSE_07】Java中类和对象-封装特性--练习
  6. 2013年最 “酷”科技产品回顾
  7. CodeForces - 1092F Tree with Maximum Cost(树形dp+树根转移)
  8. 交通安全与智能控制专业学计算机吗,交通安全与智能控制专业主要做什么
  9. 准备成立公司开发 app 外卖应用,怎么起步?
  10. Springboot+Vue+EasyExcel实现web页面的excel下载
  11. IEEE trans使用latex模板部分字体是黑色,部分变成了绿色
  12. 金融知识普及知识竞赛
  13. 深度学习: 细粒度图像分类 (fine-grained image recognition)
  14. java 汉字是多少字节_面试官:Java 中有几种基本数据类型是什么?各自占用多少字节?...
  15. 网络协议-路由(笔记)
  16. Vbox 未指定XXX网络名称 找不到网卡问题
  17. 自制ST-Link V2.1教程(SWD调试+虚拟串口+虚拟U盘)
  18. linux修改host文件
  19. c++病毒系列(1)
  20. html5篮球数据,我做了一个模拟篮球比赛的数据网页游戏

热门文章

  1. 根据四个特征点求解相机位姿
  2. win10系统更新服务器出错怎么办,win10系统正式版自动更新出错的解决方法
  3. 计算机怎么放映文档,如何从Apple TV上的计算机播放视频文件
  4. 大数据可视化工程师岗位要求包括哪些?
  5. top在linux的命令,Linux命令详解之–top命令 | Linux大学
  6. Java的多态性以及Annotion注解
  7. c语言ifi=1 2,第1部分_C语言程序设计练习一全解.doc
  8. flink 作业提交流程
  9. 一级域名、二级域名 cookie
  10. 论文复现——CE-FPN: Enhancing Channel Information for Object Detection