From: Başer (baserguvenc@yahoo.com)
Date: Mon 08 Jan 2007 - 19:51:54 GMT
Yardımlarınız için teşekkürler .
Mehmet Fatih YILDIZ <fatih.mfyz@gmail.com> wrote: tek sql ile nasıl yaparız su an hatirlayamadim ama 2 adim ile cok kolay yapilabilir
1. adimda duplicate olan verileri buldurmaniz gerek
bunu:
select id, count(id) as count from XX group by value_columnt where count > 1
bu sql çıktısı size aynı value_column kolonundaki değere sahip verilere ait id'leri id olarak, tekrar sayısını da count olarak donecektir.
bu id'leri tek tek donerek o id'ye ait en eski kayidin id'sini barindiran ORJINAL dizisi olusturacaksiniz.
dizi donerek bu ilk sql çıktısından ORJINAL'deki id'leri çıkarıp
delete from XX where id in (...)
bu sql'de ... yerine dizinizi "," ile birleştirip (php'de implode) çalıştıracaksınız
şuna benzer olarak sonuç
delete from XX id in (1,2,3,4,6,9)
bu işlemi bir script yapip otomatikleştirebilirsiniz.. ama duplicate'leri sildirirken orjinallerini korumak önemli bir nokta. yani neye göre duplicated oldugu ile ilgili bir durum :) mesela sadece başlık değerleri aynı olan kayıtlar arasında tarih olarak en eskki hariç diğerleri diyorsanız ORJINAL'e en eski tarihli duplicate dizisindeki id'leri koymaniz ve ona gore islem yapmaniz gerek..
İyi çalışmalar
Mehmet Fatih YILDIZ
Başer GÜVENÇ wrote: Merhaba sistemde duplicate veri var ve bunları nasıl silebiliriz yani aynı verilere sahip iki kayıt (toplamda yüzlerce ) var.Sadece sql çalıştırma seçeneğim var.
Baser GUVENC
Computer Engineer. __________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
---------------------------------
_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama
_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama
Baser GUVENC
Computer Engineer.
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama