mysql数据库中有两条重复的数据,,但是id是不一样的,但是我想在前台显示出来的数据是id较大的那一条数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql数据库中有两条重复的数据,,但是id是不一样的,但是我想在前台显示出来的数据是id较大的那一条数相关的知识,希望对你有一定的参考价值。

其他字段都是一样的,就是只能用id来识别不一样,
怎么样去把这两条数据过滤成一条,只需要id比较大的那一条

参考技术A select max(id) id,nickname,tel,`group`,ali_pid,ad_pid,pid from 表名 group by nickname,tel,`group`,ali_pid,ad_pid,pid

本回答被提问者和网友采纳

ORACLE 查询某条数据的相邻两条数据(注ID可能是不连续的)

这个你可以考虑下你的逻辑。
比如说你的相邻的数据,什么样的数据才是你所谓的相邻的数据呢 是ID相隔最近的是吗?
CREATE TABLE TB(ID INT ,COL varchar2(20));
INSERT INTO TB (ID,COL)VALUES(1,'第一行');
INSERT INTO TB (ID,COL)VALUES(2,'第二行');
INSERT INTO TB (ID,COL)VALUES(3,'第三行');
INSERT INTO TB (ID,COL)VALUES(5,'第四行');
INSERT INTO TB (ID,COL)VALUES(7,'第五行');
INSERT INTO TB (ID,COL)VALUES(8,'第六行');
INSERT INTO TB (ID,COL)VALUES(9,'第七行');
INSERT INTO TB (ID,COL)VALUES(11,'第八行');

/*
ID 为5的行的上一行 是 3,'第三行'
SQL> SELECT * FROM (SELECT * FROM TB WHERE ID <5 ORDER BY ID DESC ) WHERE ROWNUM=1 ;

ID COL
--------------------------------------- --------------------
3 第三行

ID 为5的行的下一行 是 7,'第五行'
SQL> SELECT * FROM (SELECT * FROM TB WHERE ID >5 ORDER BY ID ASC ) WHERE ROWNUM=1 ;

ID COL
--------------------------------------- --------------------
7 第五行

Executed in 0.031 seconds

在实际工作中需要把里面的用procdure中的参数代替。
*/
参考技术A 用rownum

以上是关于mysql数据库中有两条重复的数据,,但是id是不一样的,但是我想在前台显示出来的数据是id较大的那一条数的主要内容,如果未能解决你的问题,请参考以下文章

mysql如何判断符合查询条件的数据有两条

给有重复记录的表添加唯一索引

主键和外键

mysql如何查询前后各两条数据

求助!使用mysql触发器(其他也可)实现一条插入语句在同表中添加两条数据。

Mysql删除重复记录,保留id最小的一条