我需要按随机结果中的名称进行排序。我的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。我需要按名称对 RAMDOM 结果进行排序。我尝试了排序数组和一些 mysql 命令,但没有成功。
最佳答案
你可以
创建一个子查询(参见草莓评论)
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']);
});
关于php - mysql php随机结果按名称排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24057603/