Türkiye'nin En Eski Webmaster Forumu İyinet'e Hoşgeldiniz!

Ayni verileri kiyaslayip silmek?

ZiRVeDeKiLeR

0
Onaylı Üye
Üye
Katılım
9 Şubat 2006
Mesajlar
516
Açılan Konu
61
Tepki puanı
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...
 

ZiRVeDeKiLeR

0
Onaylı Üye
Üye
Katılım
9 Şubat 2006
Mesajlar
516
Açılan Konu
61
Tepki puanı
0
Arkadaslar yokmu bir fikri olan? Mümkün yada degil?
 

nedium

0
Onaylı Üye
Üye
Katılım
4 Şubat 2006
Mesajlar
212
Açılan Konu
9
Tepki puanı
0
email alanına group atıp having ile count'u 1den fazla olanları seçebilirsin
 

nedium

0
Onaylı Üye
Üye
Katılım
4 Şubat 2006
Mesajlar
212
Açılan Konu
9
Tepki puanı
0
SELECT COUNT(*) AS Adet, email FROM users
GROUP BY email
HAVING (COUNT(email) > 1)

ile görüntüleyebilirsin...
 

ZiRVeDeKiLeR

0
Onaylı Üye
Üye
Katılım
9 Şubat 2006
Mesajlar
516
Açılan Konu
61
Tepki puanı
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
Onaylı Üye
Üye
Katılım
8 Mart 2005
Mesajlar
1,247
Açılan Konu
47
Tepki puanı
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
Onaylı Üye
Üye
Katılım
9 Şubat 2006
Mesajlar
516
Açılan Konu
61
Tepki puanı
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
 
Üst