关于sql重复数据只取一条 50C

最初数据效果
a和b列颠倒后,去除重复数据后效果
select 'a' a, 'b' b, 120 data1, 130 data2 from dual
union all
select 'b' a, 'a' b, 11 data1, 180 data2 from dual
union all
select 'b' a, 'a' b, 123 data1, 148 data2 from dual
union all
select 'c' a, 'd' b, 12 data1, 10 data2 from dual

a和b列颠倒后,去除重复数据后效果
去除重复数据后效果

0

1个回答

你是想去掉那一列重复的数据?

0
panxuan
panxuan 我是这样得到的 select 'a' a, 'b' b, 120 data1, 130 data2 from dual union all select 'c' a, 'd' b, 12 data1, 10 data2 from dual
2 年多之前 回复
panxuan
panxuan 我是 这个
2 年多之前 回复
panxuan
panxuan 我是通过 select 'a' a, 'b' b, 120 data1, 130 data2 from dual union all select 'b' a, 'a' b, 11 data1, 180 data2 from dual union all select 'b' a, 'a' b, 123 data1, 148 data2 from dual union all select 'c' a, 'd' b, 12 data1, 10 data2 from dual
2 年多之前 回复
shihengzhen101
AlbertS 回复panxuan: 你这不是做到了吗?
2 年多之前 回复
panxuan
panxuan 去除重复数据,包含a,b列颠倒后重复的数据。data1,data2列数据只显示对应的数据,不能乱显示,例如不可以使用集合函数(max,min等等),错误数据
2 年多之前 回复
shihengzhen101
AlbertS 回复panxuan: 看不懂你的要求是什么 啊
2 年多之前 回复
panxuan
panxuan 第二条数据和第三条数据 a和b列颠倒后,还是 a ,b (虽然显示a列显示的数据是b,b列显示的数据是a)
2 年多之前 回复
panxuan
panxuan 第二条数据和第三条数据 a和b列颠倒后,还是 a ,b (虽然显示a-b,b-a)
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
sql去重;同一条数据出现多条取一条的sql语句
理论上相同数据个别字段值不同重复问题: 1.某字段重复,其他字段值不同时,按重复字段分组只取一条的sql语句 (eg:相同的数据某个字段值有差别导致存储两条或多条无意义重复数据的情况)select s.* from (    select a.*, row_number() over (partition by [重复字段] order   by [不同字段]) as group_idx f...
oracle 数据重复,只取一条
oracle中重复记录只取其中一条 select * from table1 where rowid=any(select max(rowid) from table1 group by field1) 或者 select * from table1 where rowid in (select max(rowid) from table1 group by field1)
SQL Server 删除重复记录,只保留一条记录
有张表格之前没有设计关键字段的唯一约束,导致有时候执行插入操作时不小心执行了多次就出现了重复记录,后面重新加入唯一约束,由于已经有了重复记录,无法添加,需要先删除重复记录。         看了网上的一些删除重复记录的方法(好像都是转载于同一篇文章,至少看了十几篇都是同样的内容),其中一个链接:http://blog.csdn.net/anya/article/details/6407280
oracel重复记录只保留一条
oracel重复记录只保留一条,提供sql语句与存储过程2种处理方式
MS SQLSERVER删除重复数据且只保留一条
背景:表Per_CheckIn,主要字段:pid--身份证号,checktime-刷身份证时间,由于误操作,导致了重复记录产生,现需将pid和checktime一样的记录删除。具体表结构:CREATE TABLE [Per_CheckIn]( [id] [INT] IDENTITY(1,1) NOT NULL, [pid] [CHAR](18) NULL, [pname] [NVARCHAR...
数据库面试题---SQL中遇到多条相同内容只取一条的最简单实现
SQL中经常遇到如下情况,在一张表中有两条记录基本完全一样,某个或某几个字段有些许差别, 这时候可能需要我们踢出这些有差别的数据,即两条或多条记录中只保留一项。 如下:表timeand 针对time字段相同时有不同total和name的情形,每当遇到相同的则只取其中一条数据,最简单的实现方法有两种 1、select time,max(total) as total,name fro
SQL语句--删除掉重复项只保留一条
用SQL语句,删除掉重复项只保留一条在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 select * from people where peopleId in (select peopleId from people group by peopleId having count(peopleId)...
sql去重复,只留id最大的一条记录
  select * from tablename as a  where not exists (  select 1 from tablename as b  where b.name=a.name and b.id>a.idtalename:要去重复的表name:需要去重复的字段,可以有多个字段ID:取id字段最大...
sql的查询重复 和 去重后只保留一条
1.查询重复:select * from wx_user_address where USER_num in (select USER_num from wx_user_address group by USER_num having count(USER_num)>1) 2.删除重复保留一条:DELETE FROM wx_user_address WHEREuser_num IN ( SE...
Sql Server 删除重复记录,只保留一条
delete users where ids not in (select min(ids) from users group by userid,username having(count(*)>1 or count(*) =1)) 解释:首先查询出来count(*)>1的数据,也就是重复数据,跟单条数据的IDS,删除的时候就不包含他们了,所以是not in,    因为保留一条重复数
SQL删除重复数据,并保留GUID最小的一条数据
操作步骤 1、首先,查找表中每一个重复数据的最小GUID的一条数据,重复记录是根据单个字段(repeat)来判断: select * from Table t where t.GUID=(select min(a.GUID) from Table a where a.repeat=t.repeat) 2、查出除了第一步的所有数据: select * from Table s where
SQL查询重复数据,只显示一条sql语句
2种方法, 1.在select后面加 distinct 可以过滤重复的数据, 点评:在海量数据下效率低 2.利用group by ,把查询到的字段都放在group by后面,点评:效率比distinct高,使用也比distinct麻烦点!sql语句: select name from ZonCanKu group by name
MySQL 语句(一) ——去除重复数据,只保留最早一条
前提 假设一种情况,数据库的数据重复了,但是又不想随便去除一个。 比如,书库中《三体》录入了多次,想根据时间戳,只保留第一次入库的记录,也就是张三录入的记录。 分析 想要删除重复数据,需要找出不合适的数据,根据主键(s_id)删除掉。具体是以下两步: 找出想保留数据的id 把其他的数据删除 实现 1、找出想保留数据的id,这一步是最关键的一步 如果数据是自增长的,就比较简单,只需要一句 SE...
oracle 一个表多条重复记录只取一条的解决方法
A  表:  id     name 1      张三 2      李四     B    表:   id  为  A  表 主键 id    name 1     王五 1      小李 1     王八 2     赵四 2     李五   需要的结果为: 1   张三  ,  王五 2  李四   赵四   SQL 语句为: select * f...
多条重复数据取第一条
使用分析函数row_number() over (partiion by ... order by ...)来进行分组编号,然后取分组标号值为1的记录即可。目前主流的数据库都有支持分析函数,很好用。 其中,partition by 是指定按哪些字段进行分组,这些字段值相同的记录将在一起编号;order by则是指定在同一组中进行编号时是按照怎样的顺序。 示例(SQL Server 2005或以...
mysql查找重复数据只保留一条记录
比如我直接select * from movie where name="功夫";有三条数据,但我只希望拿到其中任意一条就行了。可以使用group by 分组因为name是一样的,所以分组也就是只有一组,因此得到我想要的结果了。...
sql 取重复数据的第一条记录
使用分析函数row_number() over (partiion by ... order by ...)来进行分组编号,然后取分组标号值为1的记录即可。目前主流的数据库都有支持分析函数,很好用。 其中,partition by 是指定按哪些字段进行分组,这些字段值相同的记录将在一起编号;order by则是指定在同一组中进行编号时是按照怎样的顺序。 示例(SQL Serve
SQL 删除重复记录,只保留一条记录
SQL 删除重复记录,只保留一条记录 删除表中多余的重复记录,重复记录是根据单个字段(id)来判断,只留有rowid最小的记录  //删除用户 根据用户名,并且不包括最小ID delete from users where username in (          --根据用户名称排序,大于1 select username from users group by username ...
sql中多条重复数据只更新其中一条
update p set ip_addr='' where ip_addr='' and rownum=1
db2 查询重复数据只显示一条
方法1:row_number()函数 select * from ( select a.*,row_number() over(partition by 分组字段 order by 排序字段) rn from 表名; ) b where rn = 1上面这个方法还是很好用的,解决了我的问题方法二:DISTINCT select distinct  列名 from 表名 where 条件;方法三
Oracle删除重复记录只保留一条数据的几种方法
Oracle删除重复记录只保留一条数据的几种方法 1. 问题描述 BBSCOMMENT表为BBSDETAIL的从表,记录商户评价信息。因为数据倒腾来倒腾去的,有很多重复数据。表结构如下: COMMENT_ID NOT NULL NUMBER  --主键 DETAIL_ID NOT NULL NUMBER  --外键,引用BBSDETAIL表 COMMENT_BODY NOT NULL
去除数据库重复记录只保留一条记录
最近在保存数据库操作时,将没有的字段直接存到数据库中,跑一个程序的时候可能会有多条重复存储的记录,导致数据库中有很多重复记录。sql语句操作 删除重复记录,保留一条记录即可。比如我有一张表 CITY_DISTANCE城市-距离 表IDCITY        DISTANCE   因为代码中只要不存在的城市我就会保存到数据库中,用的save,就可能会有重复的城市和距离了.要去除,直接SQL语句就可以...
Sqlserver删除重复记录,保留最新(ID最大)的一条
Delete A from GIS_Mall_Info A inner join ( select MAX(id) as ID,Ref_ID from GIS_Mall_Info group by Ref_ID having count(1)>1 ) B on B.Ref_ID=A.Ref_ID and B.ID<>A.ID  
oracle 利用 ROW_NUMBER() OVER实现重复数据只取一条并且循环取直到满足所需的条数
(1)SELECT A.*,ROW_NUMBER() OVER (PARTITION BY ISSUE_ENTERPRISE_ID ORDER BY C_INDEX DESC, ADD_TIME DESC) ROW_NUM FROM TEST   A          ORDER BY ROW_NUM ASC, C_INDEX DESC, ADD_TIME DESC ISSUE_ENTERP
sql查询-多条数据相同,取其中一条
(说明,参考的网上的文章,自己做了测试) 问题: 表1 学校 年级 班级 姓名 性别 年龄 1中 1 2班 张 男 20 --这个曲调 2中 3 1班 马 男 17 1中 2 2班 李 女 16 2中 3 5班 张 男 15 2中 3 6班 李 女 18 --
oracle去除重复, 取最新的第一条数据
问题:在项目中有一张设备检测信息表DEVICE_INFO_TBL, 每个设备每天都会产生一条检测信息,现在需要从该表中检索出每个设备的最新检测信息。也就是device_id字段不能重复,消除device_id字段重复的记录,而且device_id对应的检测信息test_result是最新的。   解决思路:用Oracle的row_number() over函数来解决该问题。 解决
取得数据表中前N条记录,某列重复的话只取第一条记录
项目需要筛选出不重复数据,以前没有做过,第一反应就是利用distinct处理,但是弄了好久也没搞出来,大家有知道的望告知下。 这次筛选没有使用distinct ,是利用group by ,利用id为唯一标示符(自增长),对按user进行排列,然后取重复项最小id(非重复项直接取唯一id),并以此id为条件查询,从而去除重复的数据。 数据格式为: 使用语句如下: se
MySQL中删除重复数据只保留一条
用SQL语句,删除掉重复项只保留一条在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢 1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 SELECT * FROM people WHERE peopleId IN ( SELECT peopleId FROM
sql去重复保留距离时间最近的一条数据
如图:(表名叫 ExamStudentScoreInfo) sql语句: select * from ExamStudentScoreInfo ess where not exists(select 1 from ExamStudentScoreInfo where username = ess.username and other2 < ess.other2 and ExamId=ess.
oracle 查询重复数据并且删除, 只保留一条数据的SQL语句
delete from t_account where feedate in (   select feedate           from t_account   group by feedate   having count(1)>1 ) and id not in (   select min(id)           from t_account   group by
oracle-查询数据,其中指定字段重复的只取其中一条
今天学了一句sql和大家分享一下: oracle数据库,情景:表(客户-业务员)中数据都不完全重复,但是可能多条数据其中某些字段重复。我想要取得表中符合条件的记录,但是这些记录中的客户id和客户名称发生重复的话只能留一个。 如上图我想找出“冯冬梅”负责的所有客户,但是由于她属于多个部门,此表存储的是不同部门-不同人员对应的不同客户,所以会有重复数据,那么我想去除重复得到完整的记录,应该怎么...
关于SQL删除重复数据只保留一条
用SQL语句,删除掉重复项只保留一条 在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢 1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 select * from people where peopleId in (select peopleId from people group by peopleId havi
SQL中遇到多条相同内容只取一条的最简单实现
SQL中经常遇到如下情况,在一张表中有两条记录基本完全一样,某个或某几个字段有些许差别, 这时候可能需要我们踢出这些有差别的数据,即两条或多条记录中只保留一项。 如下:表timeand 针对time字段相同时有不同total和name的情形,每当遇到相同的则只取其中一条数据,最简单的实现方法有两种 1、select time,max(total) as total,name from
SQL针对单列删除重复数据只保留一条id最大的数据
delete from t_student  where id in (  SELECT id from ( SELECT * from t_student   where  name in (select name  from t_student where  name is NOT NULL   group by name      having count(name) > 1)  a
SQL删除重复数据只保留一条
转自:blog.csdn.net/anya/article/details/6407280 问题:SQL删除重复数据只保留一条 解决方案: 用SQL语句,删除掉重复项只保留一条 在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢 1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 select * from p...
mysql 重复记录只选取最后一条
1. 使用 EXISTS 和 NOT EXISTS参数 // sid相同,create_time不同,取create_time最后一条 SELECT id, sid FROM table_name a WHERE NOT EXISTS (SELECT 1 FROM table_name where a.sid = sid AND a.create_time 2. 使用子查选
MySQL查询根据名字段重复内容只显示最新的一条
例: SELECT * FROM user_bindcard_info WHERE (id IN ( SELECT MAX(id) FROM user_bindcard_info WHERE (vip_id IN(1000000006,1000000009,654323)) GROUP BY card_no )) ORDER BY id ASC LIMIT 5
MySql语句_取重复记录中最新的一条
SELECT a.repayDate FROM t_jt_contract_data AS t LEFT JOIN (SELECT contractId, MAX(id) AS maxId FROM t_jt_contract_fund_ransom_apply GROUP BY contractId) AS c ON t.id = c.contractId LEFT JOIN t_
mysql删除重复记录只保留一条(一句简单sql)
案例: 目的:根据name和class分组,将ceshi表中相同的数据删除只保留id最小的那一条。 sql语句如下: DELETE FROM ceshi WHERE id NOT IN (SELECT id from ( SELECT min(id) AS id FROM ceshi GROUP BY `name`,class)a)   试验效果: ...
mysql sql 语句 查询重复数据 并删除重复数据 只保留一条
**#例1:根据手机号customer_id查询所有重复的数据** SELECT * FROM aad_apply_main WHERE customer_id IN ( SELECT customer_id FROM aad_apply_main GROUP BY ...
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 关于大数据培训 关于云计算