2017-11-03 4 views
0

基本的には、dbから重複を削除するための抽象タスクがあり、それはいくつかの他のテーブルとIDでリンクされています... テーブルの繰り返し行ごとに割り当てる必要があります既存の行のmax(id)として一意のgroup_id。あなたがグループ最初のエンティティ(グループIDを見つけるために)とは、エンティティのgroup_idを更新することができhttps://i.stack.imgur.com/CVYG1.png列ごとにMySqlグループをグループ化し、一意のgroup_idを割り当てます

+0

https://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-toを参照してください。 -be-a-very-simple-sql-query – Strawberry

答えて

0

絵 に

私の質問を助けてください。

例:

UPDATE `t`, 
    (SELECT `name`, `surname`, MAX(`id`) AS `group_id` FROM `t` 
    WHERE 1 GROUP BY CONCAT(`name`, `surname`)) AS `t1` 
SET `t`.`group_id` = `t1`.`group_id` 
WHERE `t`.`name` = `t1`.`name` AND `t`.`surname` = `t1`.`surname` 
+0

素晴らしいです。これは私のために働いた。ありがとうございました。私のような人がそのような高度なクエリを学ぶことができる何らかの種類の本やリソースをお勧めしますか? –

+0

残念ながら私は良い本を知らない。基本的には基本的な知識と論理的な考えが必要です。 ( - ; – Neodan

関連する問題