У меня есть база данных MYSQL с отрицательными числами, заключенными в круглые скобки
, например. (14 500), что должно быть -14 500.
Я сохраняю числа как varchar. Я пытаюсь преобразовать все числа в формат double или float, а также отформатировать отрицательные числа со знаком минус.
Мой код:
select case
when substr(gross_d,1,1) = '(' then
ltrim('(') and rtrim(')') *-1
else
(gross_d)
end gross_d_num
from buy;
convert(gross_d_num,Double);
Проблема с моим текущим методом заключается в том, что все отрицательные числа со скобками преобразуются в ноль. Есть ли другой способ получить мой результат.
редактировать:
Я также удалил *-1, чтобы увидеть, удалена ли скобка, и я получаю нулевое значение.
ltrim('(') and rtrim(')') * -1
всегда равно нулю, независимо от того, что такое Gros_d. - person nobody   schedule 01.08.2011