如何删除所有重复项,只保留该行的4个重复项?

时间:2017-04-04 06:56:10

标签: mysql duplicates

以下是具有track_id = 5的多个轨道版本的屏幕截图。我想保留4并删除Mysql中的所有内容。

image

上面的屏幕截图显示了许多重复的行。看到track_id和artist_id是重复的我想保留4个重复项并删除该记录的其他重复行。

1 个答案:

答案 0 :(得分:0)

在保存以下代码的记录时添加此验证:

$artist_q1 = $this->DbYtVideoVersions->find()->where(['track_name'=>$artist->track_match, 'artist_name'=>$artist->artist_match]);
                                                if($artist_q1->count()<4){
                                                $playlist_en = $this->DbYtVideoVersions->newEntity();  
                                                $this->DbYtVideoVersions->patchEntity($playlist_en, $trackData);
                                                $this->DbYtVideoVersions->save($playlist_en);
                                                }