Mysql PHP随机结果按名称排序


mysql php random results sort by name

我需要从随机结果中按名称排序。sql命令:

SELECT * FROM oc_manufacturer ORDER BY RAND() ASC LIMIT 0,50

返回这个数组:

   [0] => Array
        (
            [manufacturer_id] => 16
            [name] => Azzaro
        )
    [1] => Array
        (
            [manufacturer_id] => 71
            [name] => Sony
        )
    [2] => Array
        (
            [manufacturer_id] => 104
            [name] => Casio
        )
    [3] => Array
        (
            [manufacturer_id] => 30
            [name] => Jeepers Peepers
        )

但是我想先返回Azzaro,然后是Casio,然后是Jeepers Peepers和Sony。我需要从随机dom结果的名称排序结果。我尝试排序数组和一些mysql命令,但它不工作。

生成子查询(参见Strawberry注释)

SELECT * FROM (SELECT * FROM oc_manufacturer ORDER BY RAND() LIMIT 50)x ORDER BY name;

在PHP中排序数组

$array = ....; // make query
usort($array, function($item1, item2) {
    return strcmp($item1['name'], $item2['name']);
});