美文网首页
2018-11-08 各IP对应最大ID的一条记录 就相当于是得

2018-11-08 各IP对应最大ID的一条记录 就相当于是得

作者: 土豆丝炒洋芋丝 | 来源:发表于2018-11-08 11:09 被阅读0次

在一张表里
想要得到 各IP对应最大ID的一条记录 就相当于是得到每个人的最新发言之类的

按IP分组 找出对应的最大IP
听网友说我这个是因为MySQL的版本太低才需要写的这么复杂,
其他稍微高一点的版本 SELECT * FROM auto_user GROUP BY ip ORDER BY id DESC ; 即可(我没试过)

这个表

第一种方式 子查询 先排序 然后分组 (会比第二种慢)

image.png
没有使用到索引,使用了临时表,出现Using filesort
Using filesort 是Mysql里一种速度比较慢的外部排序

第二种 热心网友告诉我的写法

image.png
使用了索引,但是需要的数据都在索引列中能找到,所以不需要回表查询数据
https://blog.csdn.net/h106140873/article/details/80999990

速度


速度 emmm 本地试了好几次都是一样的速度,或许有参考价值
SELECT * FROM auto_user ;
SELECT * FROM (SELECT * FROM auto_user ORDER BY id DESC) AS a GROUP BY ip;
SELECT * FROM auto_user a WHERE not exists (SELECT 1 FROM auto_user b WHERE a.ip=b.ip AND a.id<b.id);
alter table auto_user add index room_ip_id(ip,id);  -- 该表添加了联合索引 id为主键





相关文章

  • 2018-11-08 各IP对应最大ID的一条记录 就相当于是得

    在一张表里想要得到 各IP对应最大ID的一条记录 就相当于是得到每个人的最新发言之类的 按IP分组 找出对应的最大...

  • Sklearn-常用语句

    按user_id分组取click_times最大值对应的行(只有一条记录) 创建空同类型dataframe 训练表...

  • mysql表的操作

    什么是表   表就相当于文件,表中的一条记录就相当于文件的一行内容,不同的是,表中的一条记录有对应的标题,称为表的...

  • 域名解析的常见类型

    域名是方便网络计算机地址识记的一种技术机制,简单地说就相当于是记录在DNS服务器上的IP与域名的对应表。一般网络管...

  • 表的增删查改、复制

    表相当于文件,表中的一条记录就相当于文件的一行内容,不同的是,表中的一条记录有对应的标题,称为表的字段 表 创建数...

  • mysql关于一些触发器的一些操作

    当t_user表添加一条记录时同时也添加_id_generator表对应ID数据:CREATE TRIGGER `...

  • Spark写ES重复问题优化

    1. 总体思路 在写ES的时候指定ID,一个ID对应唯一一条记录。 2. 代码 生成能表示某条记录的唯一ID号 写...

  • DNS实现负载均衡

    简单的方法,没有流量监控,只是轮询相应的ip地址的服务器是否正在工作。方法:一条域名设置多个A记录,对应不同的ip...

  • 几种域名解析方式

    主要有A记录、MX记录、CNAME记录、NS记录、TXT记录 A记录A代表Address,用于指定域名对应的IP,...

  • 对同一个id只保留最新时间创建的记录

    多条创建记录的表格中 查找最近一条的记录简单来说就是对id先进行groupby 然后找到最大/最小的时间然后选...

网友评论

      本文标题:2018-11-08 各IP对应最大ID的一条记录 就相当于是得

      本文链接:https://www.haomeiwen.com/subject/qivixqtx.html