Chức năng thay thế Oracle

Chuc Nang Thay The Oracle



Trong hướng dẫn này, chúng ta sẽ học cách sử dụng hàm replace() trong Oracle để thay thế tất cả các lần xuất hiện của một chuỗi con bằng một bộ ký tự khác.

Cú pháp hàm Replace() của Oracle

Đoạn mã sau hiển thị cú pháp của hàm replace():







THAY THẾ ( chuỗi_nguồn, chuỗi con, chuỗi_thay thế ) ;



Hàm chấp nhận ba tham số:



  1. source_string – xác định chuỗi nguồn được tìm kiếm.
  2. Chuỗi con – xác định chuỗi con sẽ được thay thế.
  3. chuỗi thay thế – thiết lập chuỗi hoặc tập hợp các ký tự được thay thế ở vị trí của chuỗi con. Đây là một tham số tùy chọn. Nếu giá trị của tham số replace_string bị thiếu, hàm sẽ loại bỏ tất cả các lần xuất hiện của chuỗi con khỏi chuỗi nguồn.

Tương tự, nếu chuỗi con trống, hàm sẽ không làm gì và trả về chuỗi_nguồn.





Hàm trả về một kiểu chuỗi với tất cả các lần xuất hiện của chuỗi con được thay thế bằng chuỗi thay thế.

Các ví dụ về hàm Replace() của Oracle

Các ví dụ sau minh họa cách hoạt động của hàm dưới các loại tham số và đầu vào khác nhau:



Ví dụ 1 – Thay thế chuỗi con

Ví dụ dưới đây minh họa cách sử dụng chính của hàm replace() với tất cả các tham số đầu vào được cung cấp.

lựa chọn thay thế ( 'Phát triển cơ sở dữ liệu Oracle' , 'ab' , 'xy' ) AS thay thế
từ kép;

Truy vấn trên sử dụng hàm replace() để thay thế các ký tự (ab) bằng (xy). kết quả đầu ra:

THAY THẾ |
-------------------------- +
Phát triển datxyase của Oracle |

Ví dụ 2 – Sử dụng hàm Replace để xóa chuỗi con

Như đã đề cập, chúng ta có thể sử dụng hàm replace() để xóa một chuỗi con khỏi chuỗi nguồn. Điều này xảy ra khi chúng tôi không cung cấp giá trị từ chuỗi con như được hiển thị:

CHỌN thay thế ( 'https://linuxhint.com' , 'https: //' ) AS d TỪ kép;

kết quả:

Đ. |
-------------+
linuxhint.com |

Ví dụ 3 – Thay thế các giá trị trong bảng

Chúng ta thường sử dụng hàm replace() để thay thế các giá trị trong bảng cơ sở dữ liệu. Lấy bảng ví dụ được hiển thị:

tạo bảng sample_data
(
Tôi số,
first_name  varchar2 ( năm mươi ) ,
ip_address  varchar2 ( hai mươi ) ,
btc_address varchar2 ( năm mươi ) ,
thẻ tín dụng varchar2 ( năm mươi ) ,
số nhận dạng  varchar2 ( 40 ) ,
ràng buộc khóa chính sample_pk ( Tôi )
) ;
chèn vào sample_data ( Tôi , first_name, ip_address, btc_address, credit_card, mã định danh )
giá trị ( mười một , 'bức tường' , '169.158.70.77' , '1CNz5d1d5SC8SaR6dFSVihwztqYx5Fg77q' , '4017955174552' ,
'26811d77-0a3a-4397-bc33-f7835f7c7ab9' ) ;
chèn vào sample_data ( Tôi , first_name, ip_address, btc_address, credit_card, mã định danh )
giá trị ( 12 , 'Ian' , '148.190.10.178' , '1ADxBV7n9JeDDcb8pL24J9wV54mcSRHdu7' , '4017956704480827' ,
'a69fe590-bc1b-4001-8ff8-154bcdb5802d' ) ;
chèn vào sample_data ( Tôi , first_name, ip_address, btc_address, credit_card, mã định danh )
giá trị ( 13 , 'Phục Sinh' , '150.86.18.140' , '126hVKom2Foy9LEA6M4pUAT1h97c2rSD8B' , '4017953296787867' ,
'34ac9385-9e1e-4d13-9537-c4eedb9f2c35' ) ;

Trước khi tuyên bố cập nhật:

CHỌN FIRST_NAME, IP_ADDRESS, CREDIT_CARD TỪ SAMPLE_DATA sd;

Chúng ta có thể sử dụng hàm replace() để thay thế tất cả các lần xuất hiện của 4 trong cột credit_card bằng 5.

CẬP NHẬT SAMPLE_DATA ĐẶT CREDIT_CARD = REPLACE ( THẺ TÍN DỤNG, '4' , '5' ) ;

Sau tuyên bố cập nhật:

Trong bảng kết quả, chúng tôi có thể xác minh các giá trị trong cột credit_card đã được thay thế từ 4 thành 5.

Phần kết luận

Thông qua hướng dẫn này, bạn đã hiểu hoạt động của hàm replace() trong cơ sở dữ liệu Oracle.