Форум: "Базы";
Текущий архив: 2005.03.13;
Скачать: [xml.tar.bz2];
ВнизРабота с нулем в FB 1.5 Найти похожие ветки
← →
}|{yk © (2005-02-15 17:31) [0]Вобщем, есть такое поле
CHAR(4) CHARACTER SET WIN1251
COMPUTED BY (case WHEN free_cash>0 then "free" WHEN free_cash=0 then "full" when free_cash<0 then "over" end)
Заполняется оно триггером при изменении в дочерней таблице
Но в это поле иногда попадает не 0, что-то вроде 1,234*Е-13, или наоборот -2,34*Е-13. Как бы это сделать правильно?
Не предлагать хранить все в копейках.
← →
Johnmen © (2005-02-15 17:42) [1]Осталось выяснить тип поля free_cash и диалект БД...
← →
msguns © (2005-02-15 17:43) [2]У этого поля есть 3 состояния: положительное, отрицательное и нуль. Почему бы его не сделать Int и держать там 1,0 или -1 соответственно ?
← →
Дмитрий В. Белькевич (2005-02-15 17:46) [3]Или в интеджере? Или округлять, перед тем, как заносить в чар?
← →
}|{yk © (2005-02-15 17:48) [4]можно. Но уже сделано, менять не хочу.
3 диалект, тип DOUBLE PRECISION
Можно использовать round из к.-л. библиотеки, но как-то не хочется
← →
Johnmen © (2005-02-15 17:51) [5]Либо всё-таки поменять на интегер, что соответствует логиге,
либо бороться со своей принципиальной ошибкой, напр.WHEN CAST(free_cash AS INTEGER)>0 then
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.03.13;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.041 c