Как заменить определенные значения в столбце базы данных оракула? - PullRequest
60 голосов
/ 09 августа 2010

Я ищу заменить значения в определенном столбце.Например, следующие значения столбца

column name
----------
Test1
Test2
Test3
Test12

должны быть (замена est1 на rest1)

column name
----------
Trest1
Test2
Test3
Trest12

Ответы [ 4 ]

165 голосов
/ 09 августа 2010

Использовать ЗАМЕНИТЬ :

SELECT REPLACE(t.column, 'est1', 'rest1')
  FROM MY_TABLE t

Если вы хотите обновить значения в таблице, используйте:

UPDATE MY_TABLE t
   SET column = REPLACE(t.column, 'est1', 'rest1')
18 голосов
/ 22 октября 2013

Если вам нужно обновить значение в определенной таблице:

UPDATE TABLE-NAME SET COLUMN-NAME = REPLACE(TABLE-NAME.COLUMN-NAME, 'STRING-TO-REPLACE', 'REPLACEMENT-STRING');

где

  TABLE-NAME         - The name of the table being updated
  COLUMN-NAME        - The name of the column being updated
  STRING-TO-REPLACE  - The value to replace
  REPLACEMENT-STRING - The replacement
0 голосов
/ 16 июня 2016

В Oracle существует концепция имени схемы, поэтому попробуйте использовать это

update schemname.tablename t
set t.columnname = replace(t.columnname, t.oldvalue, t.newvalue);
0 голосов
/ 13 мая 2016

Я использую версию 4.0.2.15 со сборкой 15.21

Для меня мне нужно было следующее:

UPDATE table_name SET column_name = REPLACE(column_name,"search str","replace str");

Установка t.column_name в первый аргумент replace не сработала.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...