Как заменить определенные значения в столбце базы данных oracle?
Я ищу, чтобы заменить значения в определенном столбце. Например, следующие значения столбцов
column name
----------
Test1
Test2
Test3
Test12
должно быть (замена est1
С rest1
)
column name
----------
Trest1
Test2
Test3
Trest12
4 ответов
использовать заменить:
SELECT REPLACE(t.column, 'est1', 'rest1')
FROM MY_TABLE t
Если вы хотите обновить значения в таблице, используйте:
UPDATE MY_TABLE t
SET column = REPLACE(t.column, 'est1', 'rest1')
Если вам нужно обновить значение в определенной таблице:
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
в Oracle существует концепция имени схемы, поэтому попробуйте использовать это
update schemname.tablename t
set t.columnname = replace(t.columnname, t.oldvalue, t.newvalue);
Я использую версию 4.0.2.15 со сборкой 15.21
для меня это было необходимо:
UPDATE table_name SET column_name = REPLACE(column_name,"search str","replace str");
положить t.column_name
в первом аргументе replace
не работает.