для того, чтобы держать в несколько заявлений SQL, как это возможно, я хочу сделать выбранный набор из MySQL:результаты PHP/группы MySQL по колонке
SELECT * FROM products WHERE category IN (10,120,150,500) ORDER BY category,id;
Теперь у меня есть список продуктов, в следующем порядке:
CATEGORY
- product 1
- product 2
CATEGORY 2
- product 37
...
Каков наилучший и наиболее эффективный способ обработки результата MySQL?
Я думал, что-то вроде (псевдо PHP)
foreach ($product = fetch__assoc($result)){
$products[$category][] = $product;
}
, а затем при выводе его, сделать цикл по каждому элементу:
foreach($categories as $category){
foreach($products[$category] as $product){
$output;
}
}
Это лучшее, или что-то волшебное, как mysql_use_groupby
или что-то?
Когда вы выбираете категорию GROUP BY, вы получаете только один продукт за каждую категорию в наборе результатов. Это то, что вы хотите? – mluebke
@mlueabke: спасибо, я отредактировал свою инструкцию SQL с правильной группировкой - другой 'ORDER' вместо' GROUP BY' –