MySQL 根据时间排序失败
问题背景:MySQL数据库中,如果使用datetime,那其实只是精确到了秒。如果基于它排序并分页查询,若同一秒的数据超过一页,则多次查询得到的结果集可能会出现不一样的灵异事件。SQL:
SELECT * FROM table_name WHERE id> 100 order by create_time DESC;
其中create_time的类型是datetime,id是自增长主键。
问题分析:分页排序查询场景,大量数据为同一个create_time时,MySQL随机返回数据。MySQL数据库中datetime和datetime(n), 0<=n<=6 是有精度区别的,如果使用datetime,那其实只是精确到了秒。
问题解决:排序规则同时加上id,SQL如下:
SELECT * FROM table_name WHERE id> 100 order by create_time DESC, id desc;
文章到这里就结束了,看完之后你有什么想法想要跟大家分享呢?评论区在等着你!
MySQL 根据时间排序失败的更多相关文章
- Mysql关于时间排序的问题
SELECT * FROM table_name WHERE deleted = 0 order by create_time DESC 当用户使用DESC(降序时),最终得到的结果集,时间早的在前面 ...
- mysql查询根据时间排序
表数据: mysql查询根据时间排序,如果有相同时间则只查询出来一个 所以需要再判断,如果时间相同,则根据id进行降序排序
- Mysql数据库表排序规则不一致导致联表查询,索引不起作用问题
Mysql数据库表排序规则不一致导致联表查询,索引不起作用问题 表更描述: 将mysql数据库中的worktask表添加ishaspic字段. 具体操作:(1)数据库worktask表新添是否有图片字 ...
- Mysql 主主复制失败恢复【转】
Mysql 主主复制失败 Mysql 主主复制失败 故障描述 架构信息 节点信息 故障分析 同步AIPPRD2的从环境 同步AIPPRD1的从环境 故障描述 原因描述 因为机柜PDU老化, 导致整个机 ...
- MySQL字符集与排序规则总结
字符集与排序规则概念 在数据库当中都有字符集和排序规则的概念, 很多开发人员甚至包括有些DBA都会将这个混淆,当然这个情况也有一些情有可原的原因.一来两者本来就是相辅相成,相互依赖关联: 另外一方 ...
- Mysql 根据时间取出每组数据中最新的一条
下策——查询出结果后将时间排序后取第一条 select * from a where create_time<="2017-03-29 19:30:36"order by c ...
- Mysql 连续时间分组
该方案:不限于本例的时间连续,也可适用于其他按连续分组. 连续条件 分组这问题困扰了很久,之前觉得在SQL上很难处理,都是在程序上做处理.后面实在有太多这需求了,所以只能想办法在SQL上处理了. 如下 ...
- mysql基于“时间”的盲注
无需页面报错,根据页面响应时间做判断! mysql基于时间的盲注 =================================================================== ...
- 如何对sharepoint图片库的文件夹的图片按照时间排序并分页显示
/// <summary> /// 获取图片库第一层文件夹--根据文件夹名称排序 /// </summary> /// <param name="siteUrl ...
- ls按时间排序输出文件列表
文件转自:http://www.2cto.com/os/201303/197829.html ls按时间排序输出文件列表 首先,ls --help查看ls相关的与时间排序相关的参数: > ...
随机推荐
- swoole(7)php进程间通信-消息队列
php实现消息队列操作 ftok:可以将一个路径转换成消息队列可用的key值 msg_get_queue:第一个参数是消息队列的key 第二个参数是消息队列的读写权限 server代码: <?p ...
- 浅谈processing-java.exe应用程序的使用(与PowerShell的联合)
简单总结一下processing-java.exe的使用,以及和PowerShell结合,如何互相调用和传参. Processing-java 这是 processing-java.exe 的官方说明 ...
- AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
一.前言:AI编程时代的双雄争霸 2025年3月,字节跳动推出的Trae以"国内首个AI原生IDE"之名杀入战场,直指海外明星产品Cursor的软肋.这场工具革命背后,是免费与付费 ...
- Windows编程----结束进程
进程有启动就有终止,通过CreateProcess函数可以启动一个新的子进程,但是如何终结子进程呢?主要有四种方法: 通过主线程的入口函数(main函数.WinMain函数)的return关键字终止进 ...
- 云服务器下如何部署Flask项目详细操作步骤
参考网上各种方案,再结合之前学过的Django部署方案,最后确定Flask总体部署是基于:centos7+nginx+uwsgi+python3+Flask之上做的. 本地windows开发测试好了我 ...
- AIX操作系统基本命令
1,内核 bootinfo -k 2,硬件 bootinfo -r lscfg |grep proc lspv lscfg 3,操作系统 oslevel -r oslevel -s uname ...
- Docker学习笔记:Docker 网络配置
2016-10-12 10:29:00 先知 转贴 51964 图: Docker - container and lightweight virtualization Dokcer 通过使用 Li ...
- C# 多文件打包
public HttpResponseMessage GetZip() { var response = Request.CreateResponse(HttpStatusCode.OK); try ...
- swich语句
1.switch语句格式 括号内的是待匹配内容,然后case后的是被匹配内容,如果括号内的内容与case后的内容一致,则会打印语句体 . 2.实操(后面的省略了) 3.注意事项 1.case后面的值不 ...
- .NET & JSON
C# & JSON DataContractJsonSerializer // JsonHelper.cs using System; using System.Collections.Gen ...