|
|
|
| Есть таблица id (счет), fioid (айди фамилии ), dat (дата), kof (коэфициэнт)
Необходимо осуществить накопительный итог по полю kof, по возрастаню до целого числа, с округлением в меньшую сторону пример:
id fioid dat kof itog
1 1 1-1-9 0,70 0 - 0,7 меньше целого, поэтому результат "0"
1 1 2-2-9 0,80 1 - 0,7 предыдущей даты + 0,8 текущей даты = 1,6 округляем до целого в меньшую сторону "1"
1 1 3-2-9 0,30 0 - 0,6 остаток предыдущего + 0,3 = 0,9 меньше целого округляем в меньшую сторону "0"
1 1 4-2-9 2,50 3 - 0,9 остаток предыдущего + 2,1 = 3, остаток идет на следующую дату если она есть
А при смене id или fioid подсчет итога начинается с коэффициента по этой айдишке.
Такое реально сделать? | |
|
| |
|
|
|
| http://hiprog.com/forum/read.php?id_forum=1&id_theme=6117&page=1 | |
|
| |
|
11 Кб. |
|
| Да. | |
|
| |
|
|
|
| Это немного не то, мне надо что б накопительный итог всегда ишел к целому, если у меня предыдущая сумма была быть 1,4 отобразилась как 1 и следующая цифра 4,8, то отобразится должно 1,4+4,8, но при этом записать как 6, а 0,4 должно записаться в память для следеущего объекта:
"Число" "Отображаемое число (сумма текущего и предыдущего - целое)" "В памяти"
0,8 || 0 || 0,8
0,6 || 1 || 0,2
1,6 || 1 || 0,8
2,8 || 3 || 0,6
0,2 || 0 || 0,8
Это пример того как должна формула работать | |
|
| |
|
|
|
| есть такая функция int() - взять целую часть числа
я так думаю что вам она и нужна (складываем числа, потом раз и int(сумма) и все) | |
|
| |