rörigt är bara början...
Ska försöka förklara. Har en tabell med alla användare (members). Unika numret är memberID...
Har en tabell med vänner (friends). Där finns två kolumner.
friends.memberID = anvädaren som lagt till sina kompisar
friends.friendID = användarens kompisar.
Både friend.memberID och friend.memberID kan relateras till members.memberID.
har provat med:
SQL ="SELECT * FROM members left join friends on friends.memberID= members.MemberID WHERE members.memberID =" & session("memberID") & " friends.friendID is null"
Vad jag vill är att visa alla medlemmar som _inte_ är hans/hennes kompisar
Detta bör fungera om din databas stöder nästlade SQLsatser
SELECT * FROM members WHERE memberID Not In (SELECT friendID FROM friends WHERE memberID = 'medlemmensNamn')
tyvärr gör den inte det. Har MySQL 4.0.xxx
Ajdå.. värre med det.. Du kan inte uppgradera till 4.1? Tror den skall stödja nästlade SQLsatser
jag kan, men webhotellet gör det inte...
Kan man inte göra om de till två frågor på något sätt?
Har knåpat lite till:
SQL ="SELECT * FROM members left join friends on friends.memberID = members.MemberID and friends.memberID = members.memberID WHERE friends.friendID is null"
fungerar till viss del, men den tar inte hänsyn till om det finns flera rader med samma memberID i Friends -> dvs, den utesluter bara det första och tar med resten
StevePMedlem sedan mars 2003772 inlägg Varför joinar du 2 gånger av samma?
friends.memberID = members.MemberID and friends.memberID = members.memberID
LarsGMedlem sedan dec. 200012 464 inlägg SELECT * FROM members left join friends
on members.memberID = friendID
and friends.memberid = <session("memberID")>
WHERE friendid is null
tack LarsG, det verkar fungera ungefär som jag vill. Ett litet sista problem... Jag vill inte att det memberid ska visas som den inloggade personen har. Det lagras i session("memberID") . Kan man sätta in :OO
" and not members.memberID=" & session("memberID")
eller något liknande någonstans i frågan? :q
LarsGMedlem sedan dec. 200012 464 inlägg Det borde väl gå, dvs ungefärligen
sql = _
" SELECT * FROM members left join friends " & _
" on members.memberID = friendID " & _
" and friends.memberid = " & session("memberID") & _
" and not members.memberID=" & session("memberID") & _
" WHERE friendid is null