Если вы думаете об использовании обратных ссылок в строке замены, это невозможно, AFAIK. Вы делаете ОБНОВЛЕНИЕ следующим образом:
UPDATE foo
SET bar = <some expr including baz>
WHERE baz REGEXP <regex>
Но назначенное выражение должно полагаться на обычные строковые функции, такие как replace(...)
и substr(...)
(или ваши собственные функции расширения ). Невозможно вызвать группы, найденные оператором REGEXP
.
РЕДАКТИРОВАТЬ: Вот конкретный пример, который интерпретирует числовые идентификаторы акций после префикса 'STOCK ID: '
в столбце item_key
как номера акций:
UPDATE staff
SET stock_number = CAST(substr(item_key, 11) AS INTEGER)
WHERE item_key REGEXP '^STOCK ID: \d+'