sql >> Base de Datos >  >> RDS >> Mysql

¿Cómo selecciono filas aleatorias en MySQL?

turbod estuvo cerca de su respuesta, solo estaba ordenando al azar, cuando parece que querías ordenar por pid, después de obtener las filas aleatorias que querías junto con las relativas a A2 y A3:

(
    SELECT *
    FROM `mytable`
    WHERE 
        name ='A2' OR 
        name ='A3'
    LIMIT 2
)
UNION
(
    SELECT DISTINCT *
    FROM `mytable`
    WHERE 
        name !='A2' OR 
        name !='A3'
    ORDER BY RAND( ) LIMIT 2
) 
ORDER BY `pid`