Mencari data yang duplikat di MySQL
Pada sistem serah terima di Tirta ERP sebelum dilakukan perbaikan, terkadang, operator memasukkan nilai rit yang sama pada satu hari. Sekarang, bagaimana cara mencari data yang memiliki nilai rit yang tidak valid ?
Sederhana .., kita tinggal memanfaatkan klausa GROUP BY dan HAVING, berikut query nya :
SELECT * FROM serah_terima_amdk GROUP BY cnopolisi,ckode_pengemudi,ckode_depot,cdate,crit HAVING COUNT(*) >= 2 ;
Jika kita menggunakan ORM Doctrine 1.2, make query diatas dapat ditulis menjadi :
$q = Doctrine_Query::create()
->select("*")
->addSelect("COUNT(*) as num_rit")
->from("SerahTerimaAmdk s")
->groupBy("s.cnopolisi, s.ckode_pengemudi, s.ckode_depot, s.cdate, s.crit")
->having("num_rit >= 2") ;
$result = $q->execute() ;
return $result;