sql >> データベース >  >> RDS >> Mysql

重複した検出IDで重複行を更新します

    このクエリは、同じ名前を共有するIDのコンマ区切りリストを含むすべての重複IDを返します:

    select
      t1.id,
      group_concat(t2.id)
    from
      tablename t1 inner join tablename t2
      on t1.id<>t2.id and t1.name=t2.name
    group by
      t1.id
    

    このクエリは説明を更新します:

    update tablename inner join (
      select
        t1.id,
        group_concat(t2.id) dup
      from
        tablename t1 inner join tablename t2
        on t1.id<>t2.id and t1.name=t2.name
      group by
        t1.id
      ) s on tablename.id = s.id
    set
      description = concat('duplicate id in (', s.dup, ')')
    

    ここで作業中のフィドル をご覧ください。 。




    1. PL/SQLでJSON文字列を解析するにはどうすればよいですか

    2. drupalでLOADDATAINFILEを使用してcsvからdbにデータをロードする方法

    3. PostgreSQL DATEADD()と同等

    4. Scala Slick:MTable.getTablesは空のベクター/リストを返します