Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Cách thay thế một dòng mới trong Oracle

Vấn đề:

Bạn muốn xóa dấu ngắt dòng trong cột.

Ví dụ:

Cơ sở dữ liệu của chúng tôi có một bảng có tên address_book với dữ liệu trong các cột city_namecompany_address . Bạn muốn thay thế từng tab và ngắt dòng trong company_address cột có ‘‘ (dấu cách) để làm cho nó hấp dẫn hơn về mặt trực quan.

city_name company_address
Tokyo 15 Oreo Street,

Tokyo

9870-11
Warsaw 18 Marszalkowska Ave,

Warsaw

03-654
Accra 123 Banana Junction,

Circle-Accra,

00244
Berlin Đại lộ Mango số 25,

Asylum Down,

DE-1234

Giải pháp:

Đây là truy vấn:

SELECT
   city_name,
   REPLACE(company_address, CHR(10) || CHR(13) || CHR(9), ‘ ‘)
FROM address_book;

Đây là kết quả của truy vấn:

city_name company_address
Tokyo 15 Oreo Street, Tokyo 9870-11
Warsaw 18 Marszalkowska Ave, Warsaw 03-654
Accra 123 Banana Junction, Circle-Accra, 00244
Berlin Đại lộ Mango số 25, Asylum Down, DE-1234

Thảo luận:

REPLACE() hàm thường được sử dụng để thay thế tất cả các lần xuất hiện của một chuỗi được chỉ định trong một chuỗi bằng một chuỗi khác. Bạn có thể hỏi tại sao chúng tôi sử dụng CHR(10)CHR(13) trong ví dụ trên. CHR() hàm được sử dụng để chèn các ký tự điều khiển vào một chuỗi. CHR(10) được sử dụng để chèn ngắt dòng, CHR(9) dành cho các tab và CHR(13) là để xuống dòng.

Trong ví dụ trên, chúng tôi muốn loại bỏ tất cả các lần xuất hiện của dấu ngắt dòng, của tab và của dấu xuống dòng, vì vậy chúng tôi đã sử dụng CHR(10) , CHR(9)CHR(13) . Chúng có thể được kết hợp bằng cách sử dụng dấu nối trong Oracle (|| ) để loại bỏ tất cả các lần xuất hiện của chúng trong một cột. Cú pháp ví dụ là REPLACE(string, CHR(10) || (CHR(13) || CHR(09), ‘ ‘ ) .


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để lưu BLOB dưới dạng tệp trong PL / SQL?

  2. Cập nhật bản vá quan trọng của Oracle - tháng 10 năm 2020

  3. Làm cách nào để thực hiện chèn hàng loạt vào cơ sở dữ liệu Oracle bằng Python?

  4. Cách tạo người dùng trong Oracle Multitenant 12c không có tiền tố C ##

  5. Hàm hoặc Thủ tục cho mệnh đề IN