GROUP内部的PHP/MMySQL排序


PHP/MySQL sort inside GROUP

我有一种情况,我必须按品牌对表中的结果进行分组,然后按其他列排序。

我从一个阵列中获得我的品牌。问题是,当我按品牌分组时,这个组是按ID(组内)排序的。有没有办法在集团内部进行排序?

这是我的数组和mysql查询。

$laptop_brands = array("Acer", "Apple", "Dell", "HP-Compaq", "IBM-Lenovo", "Sony", "Toshiba", "ASUS", "Fujitsu", "Gateway");
$get_videos_query = "SELECT * FROM users_video WHERE location = 'location_1' AND brand IN ('" . implode("','", $laptop_brands) . ''') GROUP BY brand ORDER BY FIELD (brand, "Acer", "Apple", "Dell", "HP-Compaq", "IBM-Lenovo", "Sony", "Toshiba", "ASUS", "Fujitsu", "Gateway"), official DESC';

从中选择*(选择*FROM users_video WHERE location='location_1'AND brand IN('".inburde("','",>$laptop_brands).'''')GROUP BY brand)AS P按领域订购(品牌、"宏碁"、"苹果"、"戴尔"、"惠普康柏"、"IBM联想"、"索尼"、>"东芝"、"华硕"、"富士通"、"Gateway"),官方DESC

您可以从结果中进行选择,然后对其进行排序

我找到了解决方案。感谢大家的笔记和想法。

所以这是我用来得到正确结果的查询:

$laptop_brands = array("Acer", "Apple", "Dell", "HP-Compaq", "IBM-Lenovo", "Sony", "Toshiba", "ASUS", "Fujitsu", "Gateway");

$query = "SELECT * FROM (SELECT * FROM users_video WHERE location = 'location_1' AND brand  IN ('" . implode("','", $laptop_brands) . ''') ORDER BY official DESC) as my_table_tmp GROUP BY brand ORDER BY FIELD (brand, "Acer", "Apple", "Dell", "HP-Compaq", "IBM-Lenovo", "Sony", "Toshiba", "ASUS", "Fujitsu", "Gateway")';

这一切,尤其是对morteza kavakebi