加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

Mysql实例mysql SELECT语句去除某个字段的重复信息

发布时间:2020-12-12 03:10:49 所属栏目:MySql教程 来源:网络整理
导读:《Mysql实例mysql SELECT语句去除某个字段的重复信息》要点: 本文介绍了Mysql实例mysql SELECT语句去除某个字段的重复信息,希望对您有用。如果有疑问,可以联系我们。 SELECT语句,去除某个字段的重复信息,例如: 表名:table id uid username message date

《Mysql实例mysql SELECT语句去除某个字段的重复信息》要点:
本文介绍了Mysql实例mysql SELECT语句去除某个字段的重复信息,希望对您有用。如果有疑问,可以联系我们。

SELECT语句,去除某个字段的重复信息,例如:
表名:table
id uid username message dateline
1 6  a    111    1284240714(时间戳)
2 6  a    222    1268840565
3 8  b    444    1266724527
4 9  c    555    1266723391
执行语句(去除username字段重复信息并按时间排序):
SELECT *
FROM table a INNER JOIN ( SELECT max( dateline ) AS dateline
FROM table GROUP BY uid ) b ON a.dateline = b.dateline
GROUP BY id ORDER BY a.dateline DESC
结果:
id uid username message dateline
1 6  a    111    1284240714(时间戳)
3 8  b    444    1266724527
4 9  c    555    1266723391
此语句用于显示最新记录信息,在一个区域内不允许某个信息(例如:用户)同时出现多次(一次以上).
后记:效率问题
开始用了个这语句:
select * from table where dateline IN ( select max(dateline) from table GROUP BY uid ) ORDER BY dateline DESC
IN:当处理数据量比较大的时候,就没效率可言了,所以优化成内联,计算下快了6倍多...
继续条效率就加索引了~~

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读