İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

Ayni verileri kiyaslayip silmek?

ZiRVeDeKiLeR

0
İyinet Üyesi
Katılım
9 Şubat 2006
Mesajlar
516
Reaction score
0
Arkadaslar ben eski ve yeni iki forumdaki üyeleri bir db de birlestirmek istiyorum, bunu bi sekilde basardimda. Yanliz söyle bir sorum yada sorunum var diyeyim, su an ayni mail adreslerinden db de cifter cifter olanlarda mevcut.

Asagidaki sorgulama yöntemiyle üyeleri birlestirmistim.
Kod:
INSERT INTO `users`VALUES ('','username','0','0','[email protected]','0','4','4','','1178540234','1178540234','1178540234','','','0','0','','','','','0000-00-00','0','0','1','1','1','0','1','0','0','1','0','0','1','1','d.m.Y','H:i','0','0','','','1','0','0','0','1','1','1','0','0','0','0','0','4','4','1','0','1','1','0','1','0','0','0','0','0','0','0','0','127.0.0.1');


users db asagidaki seceneklerden olusuyor


userid
username
password
sha1_password
email
userposts
groupcombinationid
rankid
title
regdate
lastvisit
lastactivity
usertext
signature
disablesignature
icq
aim
yim
msn
homepage
birthday
avatarid
gender
showemail
admincanemail
usercanemail
invisible
usecookies
styleid
langid
activation
blocked
daysprune
timezoneoffset
startweek
dateformat
timeformat
emailnotify
notificationperpm
buddylist
ignorelist
receivepm
emailonpm
pmpopup
umaxposts
showsignatures
showavatars
showimages
ratingcount
ratingpoints
threadview
useuseraccess
isgroupleader
rankgroupid
useronlinegroupid
allowsigsmilies
allowsightml
allowsigbbcode
allowsigimages
emailonapplication
acpmode
acppersonalmenu
acpmenumarkfirst
acpmenuhidelast
usewysiwyg
pmtotalcount
pminboxcount
pmnewcount
pmunreadcount
reg_ipaddress


Umarim sorunumu anlatabilmisimdir. Forumda su an hic mesaj yok sifir bir forum tek istedigim saglikli bir sekilde üyelerin birlesmesi ve su an takildigim noktada cift üyelerin silinmesi. Silme isleminde email adreslerini baz almak istiyorum. Bunu yapabilecegim bir komut varmi acaba?

Fikirlerinizi bekliyorum...


Selamlar...
 

nedium

0
İyinet Üyesi
Katılım
4 Şubat 2006
Mesajlar
212
Reaction score
0
email alanına group atıp having ile count'u 1den fazla olanları seçebilirsin
 

nedium

0
İyinet Üyesi
Katılım
4 Şubat 2006
Mesajlar
212
Reaction score
0
SELECT COUNT(*) AS Adet, email FROM users
GROUP BY email
HAVING (COUNT(email) > 1)

ile görüntüleyebilirsin...
 

ZiRVeDeKiLeR

0
İyinet Üyesi
Katılım
9 Şubat 2006
Mesajlar
516
Reaction score
0
SELECT COUNT(*) AS Adet, email FROM users
GROUP BY email
HAVING (COUNT(email) > 1)

ile görüntüleyebilirsin...


Evet bu komut ile tüm cift veyagi ikiden fazla olan mailleri buluyorum ama sorun bu datalari nasil silebilirim. Bunun icinde bir komut varmi acaba?
 

KerneL32

0
İyinet Üyesi
Katılım
8 Mart 2005
Mesajlar
1,247
Reaction score
0
iki veritabaninda ki tablolari tek bir veritabanina uyeler_1 uyeler_2 seklinde ekleyip Union ile cift kayitlari gozardi edip tek kaydi elde edebilirsiniz.

Saygilar.
 

ZiRVeDeKiLeR

0
İyinet Üyesi
Katılım
9 Şubat 2006
Mesajlar
516
Reaction score
0
Arkadasim union dedigin?

DB konusunda cok fazla bilgim yok biraz daha ayrintili anlatabilirmisin?

Selamlar...
 
G

Gezgin

Misafir
Tekrarlayan kayıtları silmek

Merhaba,

tabloyu yedek alarak şu aşağıdaki sorguğu bi çalıştırıp sonucu test etmeni tavsiye derim..

Kod:
 DELETE 
   users
 FROM 
   users AS t1,
   users AS t2 
 WHERE 
   t1.email=t2.email 
   AND t1.userid <> t2.userid


kaynak: www.mysqlturkiye.org
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Üst