Я пытаюсь извлечь все после первого экземпляра разделителя.Например:
01443-30413 -> 30413
1221-935-5801 -> 935-5801
Я пробовал следующие запросы:
select regexp_replace(car_id, E'-.*', '') from schema.table_name;
select reverse(split_part(reverse(car_id), '-', 1)) from schema.table_name;
Однако оба возвращают:
01443-30413
-> 30413
1221-935-5801
-> 5801
Так что это не работает, если разделитель появляется несколько раз.
Я использую Postgresql 11. Я пришел из MySQL, где вы можете сделать:
select SUBSTRING(car_id FROM (LOCATE('-',car_id)+1)) from table_name