SUPER MID-YEAR SALE! DISKON 96%
Belajar Data Science 6 Bulan hanya 150K!

0 Hari 3 Jam 16 Menit 29 Detik

Cara Menghapus Duplikat dalam SQL Inner JOIN

Belajar Data Science di Rumah 27-September-2023
https://dqlab.id/files/dqlab/cache/longtail-senin-06-2023-09-27-181131_x_Thumbnail800.jpg

SQL sebagai salah satu basis bahasa pemrograman dalam database punya formula yang bisa diandalkan dalam hal menghapus data duplikat. SQL Join adalah operasi yang paling tepat dalam melakukan seleksi data dan mengatasi data yang double.


Dalam beberapa kasus, duplikasi data merupakan masalah sepele namun dapat berdampak besar terutama ketika hasil tersebut sudah keluar dari proses analisis. Ketika data terindikasi duplikat maka dari sisi penyimpanan juga lebih besar.


Logikanya, ketika duplikat dalam suatu tabel lebih besar maka ruang penyimpanan yang digunakan juga menjadi lebih banyak. 


Menghapus duplikat dalam SQL adalah penting karena dapat mempengaruhi integritas data, efisiensi kueri, dan pemahaman yang benar tentang data yang disimpan dalam tabel. SQL memiliki solusi dengan melakukan operasi INNER JOIN untuk menggabungkan tabel dan menghapus tabel yang terindikasi duplikat atau ganda.


Ketika kamu memiliki dua tabel, pastikan betul tabel yang digabungkan mengandung duplikat dan bisa dihapus salah satunya. Nah, pada artikel kali ini kita akan membahas tentang cara menghapus duplikat pada tabel dengan operasi JOIN pada SQL.


Penasaran bagaimana caranya? Simak yuk sahabat DQLab!


1. Pengenalan Data

Kali ini, kita akan menghapus data duplikat dengan menggunakan SQL. Disediakan tabel yang memuat dup_orders(id, amount) sebagai berikut:

SQL


Baca juga : Bootcamp Data Analyst with SQL and Python


2. Hapus Duplikat dengan Intermediate Table

Cara pertama untuk menghapus duplikat adalah dengan menggunakan tabel perantara atau intermediate table. Pertama, kita menyeleksi baris dari tabel dup_orders dan memasukkan pada tabel lainnya. Berikut adalah sintaksnya:

Python


Jika barisnya berbeda, kamu bisa menggunakan sintaks berikutnya:

Python

Kueri di atas menghapus baris yang menyelesaikan duplikat, yaitu nilai duplikat untuk semua kolom.


Jika kamu ingin menghapus baris dengan nilai duplikat hanya untuk satu atau lebih tetapi tidak semua kolom, kamu bisa menggunakan klausa GROUP BY dalam kueri di atas. Misalnya, jika kamu hanya ingin baris dengan nilai kolom ID duplikat di tabel yang sudah dibuat, maka gunakan kueri berikut.

Python


Sekarang, kita buat tabel perantaranya:

Python


Terakhir, kita akan mengganti tabel perantaranya tadi dengan tabel aslinya:

Python


3. Hapus Duplikat dengan Inner Join

Kita juga bisa menghapus duplikat dengan menggunakan INNER JOIN dan DELETE. Pada kasus ini, tabel yang dibutuhkan minimal satu unique column (primary key).


Selanjutnya kita akan membuat dup_orders yang berisi id dan jumlah beserta kolom values yang berisi angka 1,2,3 dan jumlahnya mulai dari 100, 250, 350, dan seterusnya. Berikut adalah contoh dari sintaks hapus duplikat menggunakan Inner Join SQL:

Python


Selanjutnya, tabel yang berisi id dan amount tadi, bisa digabungkan atau menggunakan operasi JOIN yaitu INNER JOIN dan menghapus row yang duplikat berdasarkan sintaks yang bisa kalian ikuti:

Python

Sintaks diatas dapat mempertahankan baris tertinggi pada kolom id.


Baca juga : Catat! Ini 3 Keuntungan Belajar SQL dalam Mengolah Data


4. Hapus Duplikat dengan Row_Number

Kamu juga bisa menghapus duplikat dengan menggunakan ROW_NUMBER(). Berikut adalah sintaks yang digunakan:

Python


Pada sintaks tersebut, terdapat partition by yang disesuaikan dengan kolom yang dituju untuk menghapus duplikat dari sebuah tabel. Selanjutnya untuk mendapatkan row_number yang ingin dihapus maka bisa juga menggunakan sintaks dibawah ini:

Python


Pada sintaks ini, digunakan untuk melakukan seleksi tabel berdasarkan row_number yang ingin dicari duplikat ordersnya. Berikut adalah outputnya:

Python


Jadi sudah tahu kan penggunaan operasi SQL Join untuk menghapus duplikat itu seperti apa? Bingung belajar SQL mulai darimana? Eits, kamu gak perlu bingung harus belajar SQL dimana karena DQLab juga menyediakan modul SQL yang sangat cocok bagi pemula.


DQLab merupakan platform belajar online yang berfokus pada pengenalan Data Science & Artificial Intelligence (AI) dengan menggunakan bahasa pemrograman populer, serta platform edukasi pertama yang mengintegrasi fitur Chat GPT. Selain itu


DQLab juga menggunakan metode HERO yaitu Hands-On, Experiential Learning & Outcome-based, yang dirancang ramah untuk pemula. 


Selain itu, Bootcamp Data Analyst with SQL and Python juga termasuk kelas yang direkomendasikan bagi pemula yang ingin melakukan pembelajaran data untuk menjadi seorang Data Analyst. Tentunya nanti kita akan dihadapkan dengan study case yang bisa menambah portfolio data.


Untuk mendapatkan pengalaman belajar menarik, buruan sign up di DQLab. Daftar sekarang dan kejar impianmu untuk menjadi Data Analyst!


Penulis: Reyvan Maulid


Mulai Karier
sebagai Praktisi
Data Bersama
DQLab

Daftar sekarang dan ambil langkah
pertamamu untuk mengenal
Data Science.

Buat Akun


Atau

Sudah punya akun? Login