Какой тип поля выбрать чтобы округление было до копеек при записи в таблицу? (+)

rubalex

Новичок
Какой тип поля выбрать чтобы округление было до копеек при записи в таблицу? (+)

число 25 в таблицу должно записаться 4.00
7,699... в таблицу должно записаться 7.70
7,691.. в таблицу должно записаться 7.69

можно ли что бы сам MYSQL это делал?
какой тип поля?
DECIMAL (10,2) обрезает тысячные а не округляет.

-~{}~ 07.07.04 12:46:

опс глуканул если число 25 то запсиать 25,00
 

Фанат

oncle terrible
Команда форума
надо крепко запомнить на всю жизно одну простою вещь
база занимается ХРАНЕНИЕМ, а не форматированием.
тебя вообще не должно волновать, в какой форме и в каком порядке лежат данные

форматирование - это частный случай.
нужно тебе сейчас при выводе такой форматирование?
вот сейчас так и форматируй. при ВЫВОДЕ

формат поля не предназначен для рисования рюшечек и бантиков.
он предназначен для оптимального ХРАНЕНИЯ

-~{}~ 07.07.04 12:54:

ты должен понять, что округление - это математическая операция.
а дорисовывание ноликов - художественная.
округлять можешь сколько угодно. если угодно - при записи. функция round наверняка есть в mysql
а вот форматировать будешь при выводе
 

filter

Новичок
rubalex
Лучше хранить величину в копейках (целое без знака).
А потом как хочешь так и обрабатывай при выводе в нужный тебе формат.
 

kvn

programmer
Лучше хранить величину в копейках (целое без знака).
инстина, т.е. хранить в INT, при типе хранения FLOAT деньги можно неправильно посчитать...есть документированные глюки.
 
Сверху