精华内容
下载资源
问答
  • 删除列中的重复数据

    2020-09-04 12:03:55
    df_data = pd.DataFrame.drop_duplicates(data, subset=c, keep="first", inplace=False)
    df_data = pd.DataFrame.drop_duplicates(data, subset=c, keep="first", inplace=False)
    
    展开全文
  • 删除excel中的一列中重复的数据

    千次阅读 2014-04-03 18:57:11
    excel 选中数据区,按“数据-筛选-高级筛选”,在出现的对话框勾选“选择不重复数据”,并在上面选择“将筛选结果复制到...这时所有数据只显示一个不重复的。 oracle   如果是纯数字的话,可以把那


    excel中

        选中数据区,按“数据-筛选-高级筛选”,在出现的对话框中勾选“选择不重复数据”,并在上面选择“将筛选结果复制到其他位置”,然后在“复制到”中选择一个新位置,确定。
    这时所有数据只显示一个不重复的。


    oracle 

           如果是纯数字的话,可以把那列复制到一列中  

         使用   select distict    该字段进行查询  所有不重复的字段


    展开全文
  • 查询LSCJMB表F_CJZY对应重复的数据: SELECT F_CJZY,COUNT(F_CJZY) FROM LSCJMB GROUP BY F_CJZY HAVING COUNT( F_CJZY )>1 查出了重复的及重复行数: 删除全部涉及重复的数据: delete from ...

    查询LSCJMB表中F_CJZY对应列值重复的数据:

    SELECT F_CJZY,COUNT(F_CJZY) FROM LSCJMB GROUP BY F_CJZY HAVING COUNT( F_CJZY )>1

    查出了重复的列及重复行数:

    删除全部涉及重复的数据:
    delete from LSCJMB where F_CJZY in(SELECT F_CJZY,COUNT(F_CJZY) FROM LSCJMB GROUP BY F_CJZY HAVING COUNT( F_CJZY )>1);

    需要保存某一列,然后删除剩余的列的话,用如下sql,删除了输了F_GUID最大列以外的所有数据。可以当作是 ID 最大的列。
    delete from LSCJMB where F_GUID not in(select t.F_GUID1 from (select max (a.F_GUID) F_GUID1 from LSCJMB a group by a.F_CJZY)as t );

    展开全文
  • firebird中删除列重复的数据

    千次阅读 2015-10-23 14:17:22
    思路是先根据分组,找出分组后数据都于一条,然后从中删除除了行id最小其他数据。Oracle即时字段没有能表示行id,每行都自带一个rowid,sql语句:select * from vitae a where (a.peopleId,a.seq) in ...

    原本不复杂,一条sql语句就可以完成。思路是先根据列分组,找出分组后数据都于一条的,然后从中删除除了行id最小的其他数据。Oracle中即时字段中没有能表示行id的,每行都自带一个rowid,sql语句:

    select * from vitae a
    where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1)
    and rowid not in (select min(rowid) from vitae group by peopleId,seq having count(*)>1)

    但是firebird中没有自带的行id,那就用个临时表,增加一个自增的id字段,然后把其他所有数据拷贝到临时表中。但是firebird临时表用法也是比较奇葩,也没有像mysql中那样的 auto increament的功能,只能用个generator在弄个trigger,来模拟auto increasement。资料又少,用firebird有点坑,sql脚本如下:

    -- 存储过程用于删除刷卡信息表中的重复数据,然后把以前索引改为唯一性索引
    -- 创建临时表,增加行id,用于删除重复数据
    create global temporary table temp_door_swipe_table (
    id integer not null,
    device_id varchar(50),
    card_id varchar(20),
    user_id varchar(50),
    io_fg smallint,
    swipe_time timestamp,
    swipe_outtime timestamp,
    remark varchar(200),
    door_log integer
    )on commit preserve rows;
    -- 设置生成器与触发器,用于数据插入时候id自增
    create generator gen_temp_door_swipe;
    set generator gen_temp_door_swipe to 0;
    SET TERM ^ ;
    create or alter trigger temp_door_swipe_table for temp_door_swipe_table
    active before insert position 0
    as
    begin
    if (new.id is null) then
    new.id = gen_id(gen_temp_door_swipe,1);
    end
    ^
    SET TERM ; ^
    -- 数据放入临时表
    insert into temp_door_swipe_table(device_id, card_id, user_id, io_fg, swipe_time, swipe_outtime, remark, door_log) select distinct * from t_door_swipeinfo;
    -- 清空表
    delete from t_door_swipeinfo;
    commit;
    -- 修改索引为唯一性索引
    drop index idx_swipe_group;
    create unique index idx_swipe_group on t_door_swipeinfo (device_id, card_id, swipe_time);
    -- 首先把device_id, card_id, swipe_time 不重复的数据放入表
    insert into t_door_swipeinfo
    select a.device_id, a.card_id, a.user_id, a.io_fg, a.swipe_time, a.swipe_outtime, a.remark, a.door_log
    from
    (temp_door_swipe_table a right join
    (select device_id, card_id, swipe_time from temp_door_swipe_table group by device_id, card_id, swipe_time having count(*) = 1)
    b on a.device_id = b.device_id and a.card_id = b.card_id and a.swipe_time = b.swipe_time);
    -- 首先把device_id, card_id, swipe_time 重复的第一条数据放入表
    insert into t_door_swipeinfo
    select a.device_id, a.card_id, a.user_id, a.io_fg, a.swipe_time, a.swipe_outtime, a.remark, a.door_log
    from temp_door_swipe_table a where a.id in
    (select min(id) from temp_door_swipe_table group by device_id, card_id, swipe_time having count(*)>1);
    commit;
    -- 清空临时表
    drop trigger temp_door_swipe_table;
    drop generator gen_temp_door_swipe;
    drop table temp_door_swipe_table;
    commit;

    global temporary最后有两个参数,一个意思是一个事务结束后把表清空,一个意思是一次连接结束后把表清空。

    “ON COMMIT DELETE ROWS creates a transaction-level GTT (the default), ON COMMIT PRESERVE ROWS a connection-level GTT.”

    这个表不会自动删,最后sql中直接给删掉了,这里用不用临时表意义不大了。
    在firebird中也没法用例如where Column1, Column2 in 这样的语法,只能换个思路,创建临时表后,用表连接方式先从临时表里面把分组后唯一的拷贝到原数据表,在把临时表中分组后有多条的,id最大或最小的拷贝到原数据表。

    http://www.firebirdsql.org/refdocs/langrefupd21-ddl-table.html

    展开全文
  • 删除数据库列中重复数据

    千次阅读 2010-03-13 11:25:00
    MySQL语句删除数据库相同和重复的记录数据行保留其中任一个 方法一:利用3条SQL语句实现(采用临时数据表tmp进行转换) create table tmp as select min(ID) as col1 from content group by name; delete from...
  • 在对数据库操作的过程难免会因为操作失误使数据库中的数据出现重复数据,下面我们要将这些数据重复数大于一的其他数据删除,只保留一条。 关于这个问题的处理方式网上一搜一大堆,但是以下两种方法貌似还没有...
  • 我有一个数据帧:index A0 {"word1"}1 {"word2, word2, word2"}2 {"word3, word3, word3, word3, word3"}3 {"word36"}.....987 {"word768, word768"}我的目标是删除A每一行的花括号和引号,并将重复的单词减少到...
  • 1 题目 2 MySQL 2.1 方法一 delete p1 from Person as p1, Person as p2 where p1.Email = p2.Email AND p1.Id > p2.Id;
  • 1、从数据表拿到符合条件的不重复的数据,存放到临时表 select * into #t1 from y_user1 a where a.y_date in(select MAX(y_date) from y_user1 b group by b.y_name) and y_name in(select y_name from y_...
  • 如何删除数据库一个表重复的数据? 比如表T:id name1 aa2 bb3 cc4 aa5 aa6 cc如何变成(保留最大的id或者最小的id):id name1 aa2 bb3 cc1.使用distinct关键字,导出无重复的数据到一个临时表,删除原...
  • <...--删除同一列的重复数据 rowid 在orcle 数据的物理地址---> delete from tbl_over_picture_alarm a where rowid not in (select min(b.rowid) from tbl_over_picture_alarm b ...
  • <br />INSERT INTO t_info_whitelist_copy SELECT *,count(distinct telephone) FROM `t_info_whitelist` group by telephone;     insert into t_info_whitelist select * from t_info...
  • 用Python实现基于多组合删除数据中的重复
  • [size=14px] 最近开发中遇到需要删除DataTable中重复需求,手写了一个方法,见下方代码 ,不过总觉得不够好,尝试用Linq写,但是尝试了很多次,都没有写 来,请Linq写法!!![/size] 源表如下: 姓名 ...
  • MySQL经常会遇到重复的数据,那么当我们遇到重复的时候的时候,如果定位哪些数据是有重复的记录?如何删除重复的数据?我们该怎么做呢?接下来我们一步步来分析一下遇到这样的情况后,该如何处理。初始化实验环境...
  • 这里的重复数据指数据库中每一的...在这样的表里有很多数据是重复的,现在的目标是对这些数据中重复的数据进行删除,保留下的数据都是不重复的。  第一种方法:  Delete from test where rowid not in(select 
  • DELETE FROM fcmi_sys_user a WHERE ROWID <> (SELECT MIN (ROWID) FROM fcmi_sys_user b WHERE a.id = b.id )
  • -- 临时表方法: SELECT IDENTITY(INT,1,1) AS autoID ,* INTO #TEMP1 FROM tableName SELECT MIN(autoID) AS autoID INTO #TEMP2 FROM #TEMP1 GROUP ...--查询重复的数据 SELECT * FROM tableName WHERE 主键 IN
  • 思路, group by 分组可以对多个进行分组, 分组后可以过滤掉重复的数据 sql语句: SELECT id,`name`,age,count(1) FROM test GROUP BY `name`,age 2. 查看重复的数据 刚刚的语句...
  • =========查询一个表存在一相同一不相同 SELECT T1.plucode,T1.pluid,t1.iscansale FROM tposgtplu T1 JOIN tposgtplu T2 ON T1.plucode = T2.plucode AND T1.pluid <> T2.pluid ================...
  • delete from midbatch where [订单编号] in (select [订单编号] from midbatch group by [订单编号] having count([订单编号]) >...要实现删除表中一列的重复数据,只留下一个,上面这句sql语句哪里出错了
  • 如果数据表没有做好约束,那么数据库难免会遇到数据重复的情况。今天就遇到这么个看起来简单却又费神的问题---如何去重。 ------期间感谢微信公众号“有关SQL”的博主大牛提供的指导和建议。大家可以关注下他的...
  • 比如表T:id name1 aa2 bb3 cc4 aa5 aa6 cc如何变成(保留最大的id或者最小...使用distinct关键字,导出无重复的数据到一个临时表,删除原表,再从临时表导入数据:select distinct name into #temp from Tdrop
  • excel 删除重复数据列数据

    千次阅读 2012-07-30 11:52:50
    大家在使用Excel表格总汇大批量数据时,难免会发现一些重复行和重复数据,这时我们就应该将那些重复的数据删除,以免会影响我们的工作,在Excel中删除重复数据和重复行的方法有N多,下面Word联盟(www.wordlm.com)...
  • Python按照某些去重
  • 这将在你VBA“Project”添加一个“Module”在“项目管理器窗口”(单击视图 - >“项目管理器窗口”以显示它)双击“Module1”节点以打开模块代码窗格并将此代码放入其中Option ExplicitSub ...
  • 废话少讲,直奔主题函数方法我们采用传统的函数法,先找出重复的内容,然后删除,具体来看一下操作步骤及要点:添加辅助,公式:=COUNTIF($A$2:A2,A2)要点:注意这里,我们不能引用整列,$A$2:A2,下拉区域会扩展...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,297
精华内容 518
关键字:

删除列中重复的数据