forum.bitel.ru
http://forum.bitel.ru/

Странный алгоритм суммы
http://forum.bitel.ru/viewtopic.php?f=22&t=3572
Страница 1 из 1

Автор:  m0nk3y [ 09 фев 2010, 20:57 ]
Заголовок сообщения:  Странный алгоритм суммы

Смотрите какая интересная штука:
Код:
mysql> select * from contract_account where cid=87;
+------+----+-----+-----+------------+
| yy   | mm | cid | sid | summa      |
+------+----+-----+-----+------------+
| 2010 |  2 |  87 |   4 | 8000.00000 |
| 2010 |  2 |  87 |   1 | 1782.23008 |
+------+----+-----+-----+------------+
2 rows in set (0.00 sec)

mysql> select * from contract_balance where cid=87;
+------+----+-----+--------+-----------+---------+--------+
| yy   | mm | cid | summa1 | summa2    | summa3  | summa4 |
+------+----+-----+--------+-----------+---------+--------+
| 2010 |  2 |  87 |   0.00 | 100000.00 | 9782.22 |   0.00 |
+------+----+-----+--------+-----------+---------+--------+
1 row in set (0.00 sec)

Поясняю sid=1 входящий трафик sid=4 -абонплата
т.е. summa3(наработка) = абонплата + трафик, но( !)
9782.22 <> 8000+1782.23.
Как же так?

Автор:  Администратор [ 10 фев 2010, 16:13 ]
Заголовок сообщения:  Re: Странный алгоритм суммы

А если добавить - удалить нулевой приход за этот месяц ситуация меняется? Версия какая биллинга?

Автор:  m0nk3y [ 10 фев 2010, 19:27 ]
Заголовок сообщения:  Re: Странный алгоритм суммы

Сервер версии 5.0 сборка 652
Код:
mysql> select * from contract_account where cid=87;
+------+----+-----+-----+------------+
| yy   | mm | cid | sid | summa      |
+------+----+-----+-----+------------+
| 2010 |  2 |  87 |   4 | 8000.00000 |
| 2010 |  2 |  87 |   1 | 2039.82354 |
+------+----+-----+-----+------------+
2 rows in set (0.00 sec)

mysql> select * from contract_balance where cid=87;
+------+----+-----+--------+-----------+----------+--------+
| yy   | mm | cid | summa1 | summa2    | summa3   | summa4 |
+------+----+-----+--------+-----------+----------+--------+
| 2010 |  2 |  87 |   0.00 | 100000.00 | 10039.83 |   0.00 |
+------+----+-----+--------+-----------+----------+--------+
1 row in set (0.00 sec)

нет не помогло
UPD иногда правильно считает, т.е. данный баг проявляется спорадически

Автор:  Администратор [ 11 фев 2010, 13:29 ]
Заголовок сообщения:  Re: Странный алгоритм суммы

А что возвращает выборка:
Код:
select yy, mm, cid, sid, round(summa, 2) from contract_account where cid=87;

?

Автор:  m0nk3y [ 12 фев 2010, 18:13 ]
Заголовок сообщения:  Re: Странный алгоритм суммы

Код:
mysql> select yy, mm, cid, sid, summa from contract_account where cid=87;
+------+----+-----+-----+------------+
| yy   | mm | cid | sid | summa      |
+------+----+-----+-----+------------+
| 2010 |  2 |  87 |   4 | 8000.00000 |
| 2010 |  2 |  87 |   1 | 2985.89500 |
+------+----+-----+-----+------------+
2 rows in set (0.00 sec)

mysql> select yy, mm, cid, sid, round(summa, 2) from contract_account where cid=87;
+------+----+-----+-----+-----------------+
| yy   | mm | cid | sid | round(summa, 2) |
+------+----+-----+-----+-----------------+
| 2010 |  2 |  87 |   4 |         8000.00 |
| 2010 |  2 |  87 |   1 |         2985.90 |
+------+----+-----+-----+-----------------+
2 rows in set (0.00 sec)


Автор:  Amir [ 12 фев 2010, 18:41 ]
Заголовок сообщения:  Re: Странный алгоритм суммы

А какая версия?

Автор:  m0nk3y [ 12 фев 2010, 19:24 ]
Заголовок сообщения:  Re: Странный алгоритм суммы

Сервер версии 5.0 сборка 652

Автор:  stark [ 12 фев 2010, 20:30 ]
Заголовок сообщения:  Re: Странный алгоритм суммы

m0nk3y писал(а):
Поясняю sid=1 входящий трафик sid=4 -абонплата
т.е. summa3(наработка) = абонплата + трафик, но( !)
9782.22 <> 8000+1782.23.
Как же так?


проверил на ваших числах , получил 9782.23. Нужен доступ

Автор:  skn [ 18 фев 2010, 01:26 ]
Заголовок сообщения:  Re: Странный алгоритм суммы

а mysql какой версии м на какой ОС?

Автор:  m0nk3y [ 10 мар 2010, 14:14 ]
Заголовок сообщения:  Re: Странный алгоритм суммы

Fedora9 x86_64
MySQL 5.0.77

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/