Как суммировать по категориям?
SELECT e_category ,e_money_sum ,SUM( e_money_sum) over(ORDER BY e_category) FROM `m_expen` |
SELECT e_category ,e_money_sum ,SUM( e_money_sum) over(ORDER BY e_category) FROM `m_expen`
Когда пытаюсь по категориям суммировать то в последней строк суммирует все. Как исправить этот недуг?
Дополнительно:
Не?
SELECT e_category, SUM( e_money_sum) FROM `m_expen` group by e_category |
SELECT e_category, SUM( e_money_sum) FROM `m_expen` group by e_category
Ответы:
,SUM( e_money_sum) over(partition BY e_category)
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос

Для суммирования данных по категориям в PHP можно воспользоваться массивами. Предположим, у вас есть массив данных, где каждый элемент содержит информацию о категории и ее значении. Вам нужно суммировать значения для каждой категории.
Пример массива данных:
$data = array( array("category" => "A", "value" => 10), array("category" => "B", "value" => 15), array("category" => "A", "value" => 20), array("category" => "C", "value" => 5), array("category" => "B", "value" => 10) );
Чтобы суммировать значения по категориям, вам нужно создать новый массив, где ключами будут названия категорий, а значениями - суммарные значения для каждой категории.
Пример кода для суммирования данных по категориям:
$sums = array(); foreach ($data as $item) { if (!isset($sums[$item["category"]])) { $sums[$item["category"]] = 0; } $sums[$item["category"]] += $item["value"]; } // Вывод результатов foreach ($sums as $category => $sum) { echo "Category $category: $sum<br>"; }
После выполнения этого кода, вы получите суммированные значения для каждой категории. В данном примере результат будет следующим:
```
Category A: 30
Category B: 25
Category C: 5
```
Таким образом, вы можете легко суммировать данные по категориям в PHP, используя массивы и циклы.