
以用户登录日志表为例,取用户最近登录的设备
1 SET nameS utf8mb4; 2 SET FOREIGN_KEY_CHECKS = 0; 3 4 -- ---------------------------- 5 -- table structure for t_login_log 6 7 DROP table IF EXISTS `t_login_log 8 CREATE table ` ( 9 IDint(11) NOT NulL auto_INCREMENT,10 user_IDNulL COMMENT '用户ID',1); padding: 0 5px">11 device_namevarchar(32ColLATE utf8mb4_bin '登录设备'12 login_timedatetime DEFAulT CURRENT_TIMESTAMP ON UPDATE '登录时间'13 PRIMARY KEY ()14 ) ENGINE=InnoDB auto_INCREMENT=9 DEFAulT CHARSETutf8mb4 ColLATEutf8mb4_bin;15 16 17 -- Records of t_login_log18 19 BEGIN20 INSERT INTO ` VALUES (11121'iPhone 6s''2019-07-01 19:20:25');21 22120'vivo x20''2019-06-28 16:21:11'22 31607'huawei P30''2019-07-04 19:21:59'23 4'2019-06-30 19:22:34'24 5'2019-07-04 19:23:07'25 6'iPad mini''2019-07-03 19:23:25'26 7'iPhone 8 Plus''2019-06-30 19:24:06'27 81970'MI8''2019-07-03 19:25:00'28 COMMIT29 30 ; 自连接,取最新的记录
1 SELECT * FROM t_login_log ORDER BY user_ID;2 3 SELECT 4 t1.* 5 t_login_log t16 left JOIN t2 ON t1.user_ID = t2.user_ID AND t1.login_time < t2.login_time 7 WHERE t2.ID IS NulL; 效果
总结
以上是内存溢出为你收集整理的MySQL去重保留最大的那条记录(取最新的记录)全部内容,希望文章能够帮你解决MySQL去重保留最大的那条记录(取最新的记录)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)