AXP
Новичок
MySQL округляет FLOAT-значения
Всем добрый день! Вот проблемка такая:
Есть 2 таблицы в MySQL:
1. LS. Таблица, в которой хранятся значение состояния счета для каждого клиента. Т е код клиента - сумма на счету. По строчке на клиента:
2. SCHET. Эта таблица содержит все истории операций с личными счетами всех клиентов - код клиента, сумма операции (положительная, если начисление на счет или отрицательная при снятии), дата операции, краткое описание:
Соотв, если сделать запрос
, то можно получить общую сумму на счету клиента. Для того, чтобы при каждом запросе суммы клиента не производились лишние рассчеты, четкое знаечние суммы хранится в таблице LS.
Собссно проблема - если я делаю, к примеру, запрос
а потом запрос:
то в результе я получаю сумму: 10.35.
Вот такое округление =(
Причем в таблице schet округления нету а в ls есть!
округление делается не четко до двух знаков, а как придется - т е есть значения, округленные и до 6го знака, а есть и до второго.
В общем это очень большая проблема - скажите, как с этим бороться?
Да, разница этих таблиц в том, что schet сздравалась руками через консоль, а ls уже через phpMyAdmin
Заранее огромное спасибо за помощь!
Всем добрый день! Вот проблемка такая:
Есть 2 таблицы в MySQL:
1. LS. Таблица, в которой хранятся значение состояния счета для каждого клиента. Т е код клиента - сумма на счету. По строчке на клиента:
PHP:
CREATE TABLE `ls` (`kod_kl` varchar(100) NOT NULL default '', `summa` float NOT NULL default '0', PRIMARY KEY (`kod_kl`),
KEY `kod_kl` (`kod_kl`)) TYPE=MyISAM;
PHP:
CREATE TABLE `schet` (`prioritet` bigint(20) NOT NULL auto_increment,`kod_kl` varchar(100) NOT NULL default '',`data` varchar(100) NOT NULL default '',`opis` text NOT NULL,`summa` float NOT NULL default '0',PRIMARY KEY (`prioritet`),KEY `prioritet` (`prioritet`),KEY `kod_kl` (`kod_kl`)) TYPE=MyISAM AUTO_INCREMENT=143429;
PHP:
"SELECT SUM FROM schet WHERE kod_kl = 'kod123'"
Собссно проблема - если я делаю, к примеру, запрос
PHP:
"UPDATE ls SET summa = '10.34953" WHERE kod_kl = 'kod123'"
PHP:
"SELECT summa FROM ls WHERE kod_kl = 'kod123'"
Вот такое округление =(
Причем в таблице schet округления нету а в ls есть!
округление делается не четко до двух знаков, а как придется - т е есть значения, округленные и до 6го знака, а есть и до второго.
В общем это очень большая проблема - скажите, как с этим бороться?
Да, разница этих таблиц в том, что schet сздравалась руками через консоль, а ls уже через phpMyAdmin
Заранее огромное спасибо за помощь!