Подстрока PostgreSQL получает строку между скобками
у меня есть строка, скажем:
Product Description [White]
Я хочу извлечь что-нибудь внутри скобок (в этом случае White) из этой строки, используя функцию подстроки PostgreSQL. Я могу заставить это работать, используя regexp_matches, но это возвращает массив, который я не хочу, если у меня нет другого выбора.
Я пробовал:
-
substring('string' from '[(.)]')> > > NULL -
substring('string' from '[(.)]')> > > NULL -
substring('string' from '[(.)]')>>> Значение null
но это работает:
-
substring('string' from 'W(.)i]')> > > h
что я делаю не так?
2 ответов
(.) соответствует только одному символу, но вы хотите, чтобы соответствовать нескольким символам там.
вам нужно (.+)
substring('Product Description [White]' from '\[(.+)\]')
Я думаю, вы хотите обновить какое-то значение, как класс оплаты от шкалы оплаты или любой вещи просто использовать следующий запрос
обновление master.тарифная сетка Установите grade_pay= случай, когда описание, Например " % ( % )%", затем(выберите подстроку (описание из' ((.+ )) ')) другое описание End:: numeric