Oracle Replace

Oracle Replace



Тази статия изследва използването на функцията replace() в база данни на Oracle за замяна на срещането на даден подниз с друг подниз.

Синтаксис на функцията

Следният код показва синтаксиса на функцията replace():







REPLACE(изходен_низ, подниз, заместващ_низ);

Функцията приема три параметъра:



  1. източник_низ – представлява изходния низ за търсене.
  2. Подниз – задава подниза, който да бъде заменен
  3. заместващ_низ – дефинира низа или набора от символи, които се заместват на мястото на подниза.

Функцията връща тип низ с всички срещания на подниза, заменени с replacement_string.



Примери за функция Oracle Replace().

Следните примери показват как функцията се държи при различни параметри и типове входни данни:





Пример 1 – Поява на заместващ подниз

Примерът по-долу илюстрира основното използване на функцията replace() с всички предоставени входни параметри.

изберете replace('Oracle database development', 'ab', 'xy') AS replaced
от двойно;

Горната заявка използва функцията replace(), за да замени знаците (ab) с (xy). Резултатен резултат:



ЗАМЕНЕН                   |
---------------------------+
Разработка на Oracle datxyase|

Пример 2 – Използване на функцията Replace за премахване на подниз

Както споменахме, можем да използваме функцията replace(), за да премахнем подниз от изходния низ. Това се случва, когато не предоставим стойността от подниза, както е показано:

SELECT replace('https://linuxhint.com', 'https://') AS d FROM dual;

Резултат:

D            |
-------------+
linuxhint.com|

Пример 3 – Замяна на стойности в таблица

Често използваме функцията replace(), за да заменим стойности в таблица на база данни. Вземете показаната примерна таблица:

създайте таблица sample_data
(
Идентификационен номер,
first_name  varchar2(50),
ip_адрес  varchar2(20),
btc_адрес varchar2(50),
кредитна_карта varchar2(50),
идентификатор varchar2(40),
първичен ключ на ограничение sample_pk (id)
);
вмъкнете в sample_data (id, first_name, ip_address, btc_address, credit_card, identifier)
стойности (11, 'Wallas', '169.158.70.77', '1CNz5d1d5SC8SaR6dFSVihwztqYx5Fg77q', '4017955174552',
'26811d77-0a3a-4397-bc33-f7835f7c7ab9');
вмъкнете в sample_data(id, first_name, ip_address, btc_address, credit_card, identifier)
стойности (12, 'Ian', '148.190.10.178', '1ADxBV7n9JeDDcb8pL24J9wV54mcSRHdu7', '4017956704480827',
'a69fe590-bc1b-4001-8ff8-154bcdb5802d');
вмъкнете в sample_data (id, first_name, ip_address, btc_address, credit_card, identifier)
стойности (13, 'Паскуале', '150.86.18.140', '126hVKom2Foy9LEA6M4pUAT1h97c2rSD8B', '4017953296787867',
'34ac9385-9e1e-4d13-9537-c4eedb9f2c35');

Преди изявление за актуализиране:

ИЗБЕРЕТЕ FIRST_NAME, IP_ADDRESS, CREDIT_CARD FROM SAMPLE_DATA sd;

Можем да използваме функцията replace(), за да заменим всички срещания на 4 в колоната credit_card с 5.

UPDATE SAMPLE_DATA SET CREDIT_CARD = REPLACE(CREDIT_CARD, '4', '5');

След изявлението за актуализация:

В получената таблица можем да проверим, че стойностите в колоните credit_card са заменени от 4 на 5.

Заключение

Чрез този урок вие разбрахте работата на функцията replace() в базите данни на Oracle.