В Oracle, если ваше начальное значение находится в столбце с именем f
, вы можете сделать:
substr(regexp_replace(reverse(f), '(\d)', '\1.'), 0, (length(f) * 2) - 1)
Это использует подход, обозначенный Tomalek
Конечно, вы можете жестко кодировать 19
вместо (length(f) * 2) - 1
, если вы знаете, что исходное значение всегда будет ровно 10 цифрами.
MySQL имеет функцию для выполнения сопоставления регулярному выражению, но не поддерживает подстановку регулярного выражения, поэтому вам нужно будет выполнять вложенную замену каждой цифры 0-9 по очереди. например для 1-3:
replace(replace(replace(reverse(f), '3', '3.'), '2', '2.'), '1', '1.')