2014-09-30 17 views
0

Я использую Oracle SQL, и у меня есть небольшой вопрос.Преобразование номеров немецкого формата в международный формат

У меня есть столбец varchar с номерами в немецком формате, и мне нужно преобразовать формат в международный (без запятой) и преобразовать столбец в float.

Например:

4,33 --> 4.11 
33.000.000,01 --> 33000000.01 
77.000,00 --> 77000 

Есть функция, которая может сделать этот разговор? Если так, то, что это? Я не нашел такой функции.

ответ

2

Вы можете преобразовать значение VARCHAR с функцией to_number в числовое значение:

select to_number('4,33', '999G999G999D99', 'NLS_NUMERIC_CHARACTERS = '',.''') from dual union 
select to_number('33.000.000,01', '999G999G999D99', 'NLS_NUMERIC_CHARACTERS = '',.''') from dual union 
select to_number('70.000,00', '999G999G999D99', 'NLS_NUMERIC_CHARACTERS = '',.''') from dual 
+0

Спасибо! Работает. – Omri

Смежные вопросы