|
|
|
| Приветствую всех =)
Возникла потребность в суммации выбранных данных из БД. Поясню на примере:
Структура бд:
id_order|money|
Часть БД:
1|278
17|16500
39|200
901|54
Нужно просуммировать числа 278, 16500, 200, 54 посредствам пхп или мускула. Вопрос - как это можно сделать? | |
|
|
|
|
|
|
|
для: nik0las
(11.10.2009 в 05:03)
| | Для этого удобно воспользоваться функцией SUM()
SELECT SUM(money) FROM tbl;
|
| |
|
|
|
|
|
|
|
для: cheops
(11.10.2009 в 12:39)
| | Спасибо, именно то, что нужно =)
А как быть с вариантом, когда требуется выбрать все одинаковые суммы из БД и просуммировать уже их? Это возможно сделать в одном запросе?
Структура бд:
id_order|money|
Часть БД:
1|278
17|54
39|278
901|54
1100|54
1500|278
2000|10
|
Я представляю как выбрать все одинаковые записи так, чтобы они были уникальными,т.е:
select distinct money from test
|
Но как теперь отобразить значение по каждому из них? | |
|
|
|
|
|
|
|
для: nik0las
(11.10.2009 в 15:35)
| | Хм... не очень понятно, так одинаковые просуммировать или только уникальные? | |
|
|
|
|
|
|
|
для: cheops
(11.10.2009 в 15:49)
| | Нет суммировать не надо, как бы это сказать... Я хочу чтобы было примерно следующее
Допустим в БД есть:
utugi - 10 записей
chainiki - 5 записей
tarelki - 7 записей
Выбрать, без повторов, все заказанные товары из БД, то есть utugi, chainiki, tarelki и написать сколько раз они использовался, т.е 10,5 и 7... | |
|
|
|
|
|
|
|
для: nik0las
(11.10.2009 в 16:34)
| | так бы сразу и сказали, тут вместо SUM() нужен COUNT()
SELECT money, COUNT(money) AS total FROM tbl GROUP BY money
|
echo $res[money]." ".$res[total];
|
| |
|
|
|
|
|
|
|
для: Valick
(11.10.2009 в 16:48)
| | Во, спасибо, Вы прям читаете мои мысли =) | |
|
|
|
|
|
|
|
для: nik0las
(11.10.2009 в 15:35)
| |
SELECT SUM(money) FROM tbl GROUP BY money
|
| |
|
|
|
|
|
|
|
для: Valick
(11.10.2009 в 16:14)
| |
SELECT SUM(money) FROM tbl GROUP BY money
|
Чего-то непонятное выбирается оО | |
|
|
|
|
|
|
|
для: nik0las
(11.10.2009 в 16:34)
| | дык а чего Вы хотели от одного поля? (идентификатор в расчёт не берём)
по идее запрос должен сложить все одинаковые числа в столбце друг с другом, но как это работает в жизни я понятия не имею, обычно группируют по одному столбцу, а складывают значения из другого | |
|
|
|