MySQL’de tekrar eden kayıtları (duplicate) oluşturmamak ve var olan tekrarları silmek

MySQL’de GROUP dediğin muhtemelen GROUP BY özelliğidir. Bu, aynı değerlere sahip satırları gruplara ayırıp özet sorgular yapmanı sağlayan temel bir özelliktir. tasarimkodlama


GROUP BY ne işe yarar?

  • Aynı kolonda tekrar eden değerleri tek bir grup olarak toplar.
  • Her grup için bir satır döner, yani sonuç kümesini azaltır. tutorialspoint

Örnek kullanım:

SELECT ulke, COUNT(*) AS musteri_sayisi
FROM musteriler
GROUP BY ulke;

Bu sorgu, her ülkeyi bir grup olarak alır ve o ülkede kaç müşteri olduğunu gösterir. datacamp


GROUP BY özellikleri

  • Sadece GROUP BY yazarak da satırları benzersiz değerlere göre gruplayabilirsin (yaklaşık DISTINCT gibi çalışır). tasarimkodlama
  • Genellikle COUNT, SUM, AVG, MIN, MAX gibi aggregate (toplama) fonksiyonlarla birlikte kullanılır. geeksforgeeks
  • HAVING ile gruplanmış sonuçları filtreleyebilirsin (örneğin: sadece 5’ten fazla müşteri olan ülkeleri göster). datacamp

Örnek tablo + sorgu

Varsayım:

musteriler
+--------+--------+
| ulke   | satis  |
+--------+--------+
| TR     | 100    |
| TR     | 200    |
| US     | 150    |
+--------+--------+
SELECT ulke, SUM(satis) AS toplam_satis
FROM musteriler
GROUP BY ulke;

Sonuç:

  • TR300
  • US150

Yani ülkelere göre satışı toplamış oldu. w3schools


Eğer senin bir tablon varsa, oradaki kolon isimlerini yaz, GROUP BY’yi tam senin verine göre örneklerle göstereyim.