SELECT *
FROM X
WHERE flags = 0
ORDER BY rand()
LIMIT 1
Tím se načte 1 náhodný řádek. Nahrazením 1 za N získáte N náhodných řádků.
Upozornění:Jak jiní zdůraznili, může to být pomalé, protože vyžaduje úplné skenování tabulky. Dělal jsem to s DB2, kde to fungovalo perfektně pro tabulky se stovkami tisíc řádků, ale podle odkazu v tereškova odpověď Zdá se, že MySQL degraduje mnohem rychleji.