SELECT *
FROM X
WHERE flags = 0
ORDER BY rand()
LIMIT 1
Hiermee wordt 1 willekeurige rij opgehaald. Vervang 1 door N om N willekeurige rijen te krijgen.
Waarschuwing:zoals anderen al opmerkten, kan dit traag zijn omdat er een volledige tafelscan nodig is. Ik deed dit vroeger met DB2, waar dit perfect werkte voor tabellen met honderdduizenden rijen, maar volgens de link in tereško's antwoord , MySQL lijkt veel sneller te degraderen.