Om man tar bort syntax-felen i min fråga blir den som nedan:
select * from
(
select u.UserID userID1, u2.UserID userID2
from EventUsers eu
join Users u on u.UserID = eu.EventUserID
join EventUsers eu2 on eu2.EventUserID != eu.EventUserID
AND eu2.EventGender = u.UserGender AND eu2.EventCity = u.UserCity
join Users u2 on u2.UserID = eu2.EventUserID
AND u2.UserGender = eu.EventGender
AND u2.UserCity = eu.EventCity
order by RAND()
) q1 group by userID1
Dock så tänkte jag inte riktigt rätt i och med att min fråga gör så att user A kan matchas ihop med user B, samt att user C också kan matchas ihop med antingen user A eller user B, vilket gör att en och samma person kan vara med i flera olika par.
Någon annan får helt enkelt tänka istället för mig, så kanske det blir bättre