Номера счетов могут содержать 1 или минус символы в начале и 1 или более -n номеров версий в конце. Как извлечь основную часть номера счета? Для этого начальные символы должны быть удалены, а конечные -n варианты также должны быть удалены.
Например,
1002546556
-1002546556
---1002546556
1002546556-1-K
-1002546556-2
--1002546556-2-3
для всех этих чисел результат должен быть
1002546556
I пробовал
select regexp_replace(invoicenumber, '-.*', '', 'g') from invoice
, но если номер счета начинается с -, он возвращает пустое значение.
Использование
PostgreSQL 9.3.5, скомпилировано в Visual C ++ build 1600, 64-битный * * 1016