2016-05-12 12 views
0

みんな!私は、コンテンツの複製を検索し、元の記事を除くすべての複製を設定しようとしています(オリジナルの記事はカウンタで定義されます(オリジナル投稿のカウンタが他の複製カウンタより大きい場合はです)データベースで0 =アクティブに。同じクエリを選択して更新し、重複を見つけよう

DB achitecture{id, title (varchar), description(varchar), img(varchar), active(int)} 

私はそれを行うにはどのように重複 0 =アクティブを設定する必要が重複

SELECT posts.title, posts.counter, posts.id 
    FROM posts 
    INNER JOIN (
    SELECT title 
    FROM posts 
    GROUP BY title 
    HAVING count(title) > 1 
) duplicates ON posts.title = duplicates.title 
    ORDER BY posts.title; 

を見つけるために、次のクエリ?

答えて

1

あなたが容易にJOINUPDATEにこれを回すことができます。

UPDATE posts INNER JOIN 
     (SELECT title, MAX(counter) as maxcounter 
     FROM posts 
     GROUP BY title 
     HAVING count(title) > 1 
     ) duplicates 
     ON posts.title = duplicates.title AND posts.counter < maxcounter 
    set posts.active = 0; 
+0

、それは動作しますが、どうもありがとうございました。 – ATIKON

関連する問題