Join blir fel

Databaser & SQL

2 svar · 222 visningar · startad av Inferis

Medlem sedan sep. 2000667 inlägg
Trådstart#1

Denna koden hämtar data som jag inte vill hämta. Trodde jag lärt mig det här, men icke...
Det jag vill göra att lista det första M.Nick som påträffas, så länge det inte är M.Nick = B.Nick och B.A_nick = min session

Set objRS = Connect.Execute("Select B.Av_nick, B.Nick, M.Nick "&_
" From B, M WHERE M.Vmbd = TRUE "&_
" AND NOT M.Mbl = '"& Request.querystring("mbl") &"' "&_
" AND NOT lcase(A_nick) = '"& lcase(sokaren) &"' "&_
" Order By M.ID ")
Medlem sedan dec. 20003 887 inlägg
#2

Du joinar inte med något villkor, så du får tillbaka alla kombinationer som inte stoppas av dina WHERE-villkor. En sådan join som du gör kallas väl implicit cross-join om jag inte kommer ihåg galet.

För att kunna svara något vettigt på det här skulle det vara bra att veta vad B och M är för slags tabeller, deras relation och vad det är du egentligen vill ha ut. Fel data är en typiskt dålig beskrivning.

Medlem sedan sep. 2000667 inlägg
#3

Uj!
Förlåt för att jag beskriver dåligt...

260 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)
132 ms — ändringar (db)