Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.05.2014, 09:13   #1
Parallelogram
Недотепа
Форумчанин
 
Регистрация: 18.01.2011
Сообщений: 174
По умолчанию Арифметические_операции_в_MySQL

Есть таблица c полями 'А' и 'В'. Как выполнить такую операцию: ( А * 0.99 / В ) ?
Код:
$q=mysql_query('SELECT A*0.99/B FROM `tablica` WHERE id=1');
$t=mysql_fetch_array($q);
echo $t;
Parallelogram вне форума Ответить с цитированием
Старый 26.05.2014, 09:31   #2
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

PHP код:
$q mysql_query("SELECT (A*0.99/B) AS `result` FROM `tablica` WHERE `id` = 1");
$t mysql_fetch_assoc($q);
echo 
$t['result']; 
Andkorol вне форума Ответить с цитированием
Старый 26.05.2014, 14:40   #3
Parallelogram
Недотепа
Форумчанин
 
Регистрация: 18.01.2011
Сообщений: 174
По умолчанию

Спасибо, работает, но почему-то результат после пятого знака после запятой становится не верным. В чем может быть проблема? Тип поля: float.
Parallelogram вне форума Ответить с цитированием
Старый 26.05.2014, 14:50   #4
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

Цитата:
после пятого знака после запятой
ой мать, а вам накой такая точность?
и как вы поняли что не верный
eval вне форума Ответить с цитированием
Старый 26.05.2014, 14:52   #5
Parallelogram
Недотепа
Форумчанин
 
Регистрация: 18.01.2011
Сообщений: 174
По умолчанию

Калькулятор считает до 9-го знака после запятой.

Р.s.: И если использовать переменный не из БД, а из файла *txt, то все считается ровно и правильно.

Последний раз редактировалось Parallelogram; 26.05.2014 в 14:54.
Parallelogram вне форума Ответить с цитированием
Старый 26.05.2014, 15:13   #6
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

Цитата:
Калькулятор считает до 9-го знака после запятой.
и что?
Цитата:
если использовать переменный не из БД, а из файла *txt, то все считается ровно и правильно.
и что?

кто о чем а голый о бане...

вы то что считаете, и какие данные?
eval вне форума Ответить с цитированием
Старый 26.05.2014, 15:21   #7
Parallelogram
Недотепа
Форумчанин
 
Регистрация: 18.01.2011
Сообщений: 174
По умолчанию

Не понял вопроса(
Цитата:
Сообщение от eval Посмотреть сообщение
вы то что считаете, и какие данные?
Спасибо, проблема решена. Нужно использовать тип поля не float, a double, иначе исходное число округляется до пяти знаков после запятой. Отсюда и не верный результат.
Parallelogram вне форума Ответить с цитированием
Старый 26.05.2014, 15:27   #8
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

вам зачем такая точность? она реально необходима или бзик?
eval вне форума Ответить с цитированием
Старый 26.05.2014, 15:38   #9
Parallelogram
Недотепа
Форумчанин
 
Регистрация: 18.01.2011
Сообщений: 174
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
вам зачем такая точность? она реально необходима или бзик?
Вот интересно, когда математики рассчитывают скорости планет относительно скорости света, они наверное тоже округляют до пятого знака.
Пользователям я вывожу округленные значения до второго знака, а в БД храню максимально возможные, чтобы ничего не потерять (меня же на работе за это повесят).
Parallelogram вне форума Ответить с цитированием
Старый 26.05.2014, 15:53   #10
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

прога для математиков считающих скорости планет относительно скорости света?

вы ваще в курсе что, например, для расчетов связанных с деньгами (бухгалтерия) достаточно 4 знаков, а иногда прибегают совсем к целочисленным типам, и все ок?
или вы думаете что типы придумали просто так?
иначе зачем этот зоопарк, влипилибы какой double extended и дело с концом...
eval вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц