PostgreSQL: преобразование строки в число

В базе данных доступны следующие строки:

Исходные данные

Требуется в колонке c_house_number, которая является типом text, найти число и сохранить преобразованное значение в новой колонке:

UPDATE dbo.cs_house as h
set n_number = coalesce((select regexp_matches(c_house_number, '\d+'))[1]::integer, 0)
where h.id = NEW.id

Основная магия в PostgreSQL выполняется тут:

(select regexp_matches(c_house_number, '\d+'))[1]
Print Friendly, PDF & Email

Добавить комментарий