webForumDet fria alternativet
Logga in / Bli medlem

Exists

Databaser & SQL

1 svar · 161 visningar · startad av cherub

Medlem sedan apr. 200171 inlägg
Frågan#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

------------------
essentitia preter non sans multiplicandum

260 ms totalt · 4 externa anrop · v20260731065814-full.5386d3bf
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)