scroll to Indonesian Version
Search for duplicate records sometimes we needed in work in an IT area. Although duplication is impossible to happen at the tables that have good referential integrity and constraint, but in our IT reality sometimes we make our table contain duplicated records.
the SQL Syntax to search for duplicate record in MySQL, Microsoft Access, Oracle, SQL Server and others much the same to or is same precisely because SQL syntax i will mention under this is a standard SQL statement syntax.
For example i use a table named Employees in MySQL database and the table have the following structure : employee_id varchar (10), name varchar (30), and the table have the following data :
employee_id | name |
8105048BR | Yana |
8205049BR | Yana |
8015052BR | Denny |
8005043BR | Denny |
8105047BR | Adi F |
8005050BR | Sody S |
At the example above we notice that there are four employees having the same name. To display the duplicated name using SQL statement in MySQL, Microsoft Access, Oracle, SQL Server and others, the SQL statement is as follows :
select name, count(*) from employees
group by name
having count(*) > 1
the SQL statement above will display the list of Name that having count greater than one record. In this example is Yana and Denny. below are the output from the SQL statement above :
name | count(*) |
Denny | 2 |
Yana | 2 |
scroll to English Version
Mencari record duplikat terkadang kita butuhkan dalam pekerjaan di bidang IT. Walaupun duplikasi tidak mungkin terjadi pada tabel yang mempunyai referential integrity dan constraint yang baik, namun dalam kenyataannya kita sering membuat tabel yang berisi data-data duplikat.
Syntax SQL untuk mencari record duplikat di MySQL, Microsoft Access, Oracle, SQL Server dan lain-lain hampir sama atau sama persis karena syntax SQL yang akan saya sebutkan dibawah ini adalah syntax statement SQL standar.
Sebagai contoh saya menggunakan sebuah tabel bernama Karyawan di MySQL strukturnya sebagai berikut : nik varchar(10), nama varchar(30), dan mempunyai data-data sebagai berikut di :
nik | nama |
8105048BR | Yana |
8205049BR | Yana |
8015052BR | Denny |
8005043BR | Denny |
8105047BR | Adi F |
8005050BR | Sody S |
Pada contoh diatas terdapat empat record yang mempunyai nama yang sama. Untuk menampilkan row duplikat tersebut dengan SQL di MySQL, Microsoft Access, Oracle, SQL Server dan lain-lain, statement SQL-nya sebagai berikut :
select nama, count(*) from karyawan
group by nama
having count(*) > 1
Statement SQL diatas akan menampilkan daftar Nama yang jumlahnya lebih dari satu, dalam contoh ini adalah Yana dan Denny. dibawah ini adalah output dari statement SQL diatas :
nama | count(*) |
Denny | 2 |
Yana | 2 |
0 comments:
Post a Comment