Exists

Databaser & SQL

1 svar · 175 visningar · startad av cherub

Medlem sedan apr. 200171 inlägg
Trådstart#1

Hej!

När en person uppdaterar sina uppgifter vill jag kolla om den emailen eller användarnamnet han har ändrat till inte används av någon annan person.

Körde förut med två olika select satser för detta men skulle nu vilja ha det i en där recordsetet blir två "fält" som retunerar 0 och 1...
Används både email och användarnamn av någon anna så retunerar rs:et således
bEmailExists = 1
bUsernameExists = 1

Hänger ni med?

Har provat med:
SELECT EXISTS(SELECT * FROM users WHERE Email = 'kalle@sverige.nu' AND userID <> 5) AS bEmailExists, EXISTS(SELECT * FROM users WHERE username = 'kalle' AND userID <> 5) AS bUsernameExists

Men det vill sig inte någon som vet hur man gör?

Medlem sedan dec. 200012 464 inlägg
#2

Exists går ju bara att använda i ett sök-villkor som where exists(subselect) så man får nog skriva något med count

select (select count(email) from users where email = 'lars.berg@mimer.se') as email, select count(username) from users where username = 'LarsG') as username
258 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
117 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)