webForumDet fria alternativet

Ta bort användare

2 svar · 520 visningar · startad av Vinnaren

VinnarenMedlem sedan sep. 2005833 inlägg
#1

Har följande:

DELETE FROM Users WHERE UserId = (
SELECT DISTINCT(u.UserId) 
FROM Users AS u 
INNER JOIN Users AS u2
ON u.Email= u2.Email
WHERE u.UserId != u2.UserId
ORDER BY u2.UserId ASC
)

Denna tar bort alla användare som finns registrerade två gånger eller fler. Men nu vill jag behålla den användare som registrerades först, dvs har man två konton med samma email så vill jag ta bort den som registrerades senast.

tex

UserId----UserName------Email
1---------Test-----------Test@test.se
2---------Test2----------Test@test.se   <---- tas bort
Peter SMedlem sedan dec. 20025 483 inlägg
#2
delete
    users
from
    users u
where
    u.userid
<>
    ( select min(userid)
        from users
       where email = u.email )
VinnarenMedlem sedan sep. 2005833 inlägg
#3

kanon, tack (y)

135 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)