Beste,

Ik zou een query willen maken waarbij 10 leden van het vrouwelijk geslacht and 20 leden van het mannelijk geslacht opgehaald worden uit de database en deze allemaal in willekeurige volgorde, maar dit lukt me niet.

Ik heb:

SELECT * FROM members WHERE geslacht= 2 LIMIT 0,10 UNION SELECT * FROM members WHERE geslacht =1 ORDER BY RAND() LIMIT 0,20 maar dit werkt helemaal niet :(

Weet iemand een oplossing?
Yep, de oplossing 't is een kwestie van netjes uitschrijven

select werktniet.*
from ((select * from members where geslacht = 2 order by rand() limit 0,10)
      union 
      (select * from members where geslacht = 1 order by rand() limit 0,20)
     ) werktniet
Beste,

Dit werkt bijna helemaal gelijk ik wilde, alleen zou ik nu ook de 10 vrouwen en 20 mannen door elkaar willen laten zien, dus niet eerst 10 vrouwen en dan 20 mannen, maar willekeurig door elkaar, is dat ook mogelijk?

Groeten

select werktniet.*
from ((select * from members where geslacht = 2 order by rand() limit 0,10)
      union 
      (select * from members where geslacht = 1 order by rand() limit 0,20)
     ) werktniet 
order by
   rand()


Zelf uitzoeken misstaat uiteraard ook niet

Reageren