• 07-12-2012, 18:01:19
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Arkadaşlar selamlar,

    bir tabloda 1000 üzerinde kayıt var diyelim bunlarında bazıları aynı.

    aynılarını bulup birini silecek bir sql komutu varmıdır acep? alfabetik dizip aynıları bulup silmek elle baya zor oluyorda
  • 07-12-2012, 19:10:17
    #2
    bir sorgu var hatta "sql remove duplicates" diye arayarak bulabilirsin.
  • 07-12-2012, 19:46:42
    #3
    DISTINCT diye bir komut buldum ama o da silmiyor sadece benzerleri görüntülemiyor
  • 07-12-2012, 20:45:36
    #4
    SELECT `address`, COUNT(`address`) AS `count` FROM `news` GROUP BY `address` HAVING (COUNT(`address`) > 1)

    bu sorguyu bir sitenin panelinde aynı adrese link veren haberleri listeletmek için kullanmışım.

    Dönen sonuçlar, adres ve kaç defa kullanıldığı.

    Bu sorguyu kullanarak bu bilgileri kullanan fakat sadece bu satırı bulundurmayan satırları sildirebilirsin.
  • 16-12-2012, 00:10:52
    #5
    Tablomda (mail) sadece 2 sütun var id ve adres

    bazı adresler 2 - 3 kere işlenmiş.

    CREATE TABLE yenimail AS SELECT DISTINCT * FROM mail
    şeklinde bir sorgu denedim. mail tablosundaki aynıları almadan yeni bir tablo yapsın diye ama yapmadı

    varmı acep başka bir çözümü olabilecek?
  • 16-12-2012, 09:23:35
    #6
    Bunun için 2 tane yöntem söyleyebilirim;

    1.) Sql sorgunu group by ile yapıp çıkan kayıtları yeni bir sql'e alırsın ki bunların hepsi farklı ve tek sonuç olur.

    2.) Yine hemen hemen aynı işlem ama bunu sql komutlarıyla databaseyi alter yardımı ile yeni bir db oluşturup tekli verileri oraya atar ve tek kalanları attıktan sonra drop edersin.