MySql脚本 asc 排序字段空值条目靠后的写法

场景:
mysql中如果使用正序 asc 排序,那么默认是把排序字段值为空的条目数据,优先排到前面,这明显不符合需求,解决如下

一、重现问题

-- 按排序号-正序
select shop_id,sort_num,update_time
from t_shop_trend_content
where shop_id = 'Q00402'
order by sort_num asc, update_time desc;-- 按排序号-倒序
select shop_id,sort_num,update_time
from t_shop_trend_content
where shop_id = 'Q00402'
order by sort_num desc, update_time desc;

正序输出:

 倒叙输出:

小结:
1、由结果输出可以看到 desc 倒序没问题,排序字段值为空的排在后面
2、但是使用 asc 正序排序有问题,会把排序字段值为空的排在前面,不符合要求

二、使用 if() 函数解决

-- 按排序号-正序
select shop_id,sort_num,update_time
from t_shop_trend_content
where shop_id = 'Q00402'
order by if(sort_num is not null, sort_num, 10000000000) asc, update_time desc;

输出:

小结:
1、从结果看符合预期
2、排序字段非空才参与排序,为空直接给个大的默认值排到最后

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/3775.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringMvc中文件上传

文章目录 1.导入文件上传所需要的jar包 2. 配置文件解析器 3.写一个前端页面 4.写后台程序 1.导入文件上传所需要的jar包 <dependency><groupId>commons-fileupload</groupId><artifactId>commons-fileupload</artifactId><version>1.3.…

华为FIT痩AP旁挂式隧道组网实验(一)

拓扑图 实验设备型号ACAC6005S1S5700S2S3700APAP2050DNAP4AP2050DNAR1AR200 没有配置好之前,是没有这个AP范围圈的 配置流程 接入交换机创建VLAN,配置对应端口的链路类型,放行vlan,开启端口隔离 # 与AP连接的接口(0/0/2) [S2]vlan batch 100 101 [S2]int e0/0/2 [S2-Ethern…

finalshell使用方法,前端vue更新服务器项目

首先我们看看finalshell的整体 上面是xshell一样&#xff0c;可以输命令 上面是WinSCP一样&#xff0c;可以直接拖文件&#xff0c;下载&#xff0c;上传&#xff0c;可视化视图 1.下载服务器文件 服务器文件通过Jenkins打包上去的&#xff0c;首先我们把文件下载到本地 点击…

ranger配置hive出錯:Unable to connect repository with given config for hive

ranger配置hive出錯&#xff1a;Unable to connect repository with given config for hive 我一開始我以為是我重啟了ranger-admin導致ranger有點問題&#xff0c;後面排查之後發現是我之前把hiveserver2關閉了&#xff0c;所以只需要重新開啟hiveserver2即可

Mysql主从同步失败排查思路及解决办法

1、查看同步信息 登录进从数据库后查询同步状态 show slave status \G 2、查看同步失败出现的日志 Coordinator stopped because there were error(s) in the worker(s). The most r ecent failure being: Worker 1 failed executing transaction 55b49392-fdcd-11ec-83b2-…

已烧写过的镜像重新烧镜像教程

本教程是已经烧录过镜像的SD卡&#xff0c;无法被电脑识别盘符导致无法重新烧录镜像的教程。一般是win7系统无法识别烧录过的Ubuntu系统盘符。win10可以使用SDformat软件格式化。 1.确定读卡器是否识别到SD卡。 点击计算机右键选择“管理”&#xff0c;选择磁盘管理&#xff0…

【AI底层逻辑】——篇章4:大数据处理与挖掘

目录 引入 一、大数据概述 二、数据处理的流程&方法 1、数据收集——“从无到有” 2、数据加工——“从有到能用” 3、数据分析 三、大数据改变了什么 往期精彩&#xff1a; 引入 AI的表现依赖大数据。曾经一段时间&#xff0c;对于图像识别的准确率只能达到60%~70…

接口测试和功能测试的区别

目录 前言&#xff1a; 一、测试目的不同 二、测试内容不同 三、测试重点不同 总结 前言&#xff1a; 接口测试和功能测试都是软件测试中非常重要的测试类型&#xff0c;它们都是验证软件产品的正确性、完备性、正确性和可靠性。但这两者之间有着一些区别。 一、测试目的…

python爬虫-逆向实例小记-3

注意&#xff01;&#xff01;&#xff01;&#xff01;某数据网站逆向实例仅作为学习案例&#xff0c;禁止其他个人以及团体做谋利用途&#xff01;&#xff01;&#xff01;&#xff01; 案例分析 第一步&#xff1a;分析页面。查看响应内容&#xff0c;内容加密 第二步&am…

chatgpt赋能python:用Python来制作动画

用Python来制作动画 Python是一种高级编程语言&#xff0c;可以用于许多任务&#xff0c;包括数据分析、网络编程&#xff0c;甚至是制作动画。在这篇文章中&#xff0c;我们将讨论如何使用Python来制作动画。 Python中的动画库 Python中有许多用于制作动画的库。其中最流行…

【动态规划算法练习】day11

文章目录 一、1312. 让字符串成为回文串的最少插入次数1.题目简介2.解题思路3.代码4.运行结果 二、1143. 最长公共子序列1.题目简介2.解题思路3.代码4.运行结果 三、1035. 不相交的线1.题目简介2.解题思路3.代码4.运行结果 总结 一、1312. 让字符串成为回文串的最少插入次数 1…

案例研究|小牛电动通过DataEase进行业务数据可视化分析

小牛电动&#xff08;Niu Technologies&#xff09;创立于2014年&#xff0c;是全球智能城市出行解决方案提供商。小牛电动的产品线包括电动自行车、电动摩托车、电动滑板车等。小牛电动在销售渠道上采用了线上线下相结合的模式&#xff0c;通过线上电商平台和线下门店销售&…