PostgreSQL SUBSTRING () với Ví dụ

Mục lục:

Anonim

Chuỗi con PostgreSQL là gì?

Hàm chuỗi con PostgreSQL giúp bạn trích xuất và trả về một phần của chuỗi. Thay vì trả về toàn bộ chuỗi, nó chỉ trả về một phần của nó.

Trong hướng dẫn PostgreSQL này, bạn sẽ học:

  • Postgresql Substring là gì?
  • Cú pháp
  • Các ví dụ
  • Khớp các chuỗi con với Biểu thức chính quy SQL
  • Sử dụng pgAdmin

Cú pháp

Hàm chuỗi con PostgreSQL có cú pháp sau:

substring( string [from starting_position] [for length] )

Thông số

Tên Sự miêu tả
chuỗi Chuỗi nguồn có kiểu dữ liệu là varchar, char, string, v.v.
điểm xuất phát Nó là một tham số tùy chọn. Nó biểu thị nơi bắt đầu trích xuất chuỗi. Nếu bạn bỏ qua tham số này, việc trích xuất sẽ bắt đầu từ vị trí 1, là ký tự đầu tiên trong chuỗi.
chiều dài Nó là một tham số tùy chọn. Nó biểu thị số ký tự được trích xuất từ ​​chuỗi. Nếu bạn bỏ qua tham số này, hàm sẽ trích xuất từ ​​start_position đến cuối chuỗi.

Các ví dụ

Trong ví dụ này, chúng tôi muốn trích xuất 4 ký tự đầu tiên từ từ Guru99:

SELECT substring('Guru99' for 4);

Lệnh sẽ trả về như sau:

Chúng tôi không chỉ định vị trí bắt đầu, vì vậy việc trích xuất chuỗi con bắt đầu ở vị trí 1. 4 ký tự đã được trích xuất để trả về như trên.

Ví dụ sau đây cho thấy cách chỉ định vị trí bắt đầu:

SELECT substring('Guru99' from 1 for 4);

Lệnh sẽ trả về như sau:

Chúng tôi chỉ định rằng việc trích xuất chuỗi con phải bắt đầu từ vị trí 1 và 4 ký tự phải được trích xuất.

Hãy để chúng tôi trích xuất 99 từ chuỗi Guru99:

SELECT substring('Guru99' from 5);

Lệnh sẽ trả về như sau:

Chúng tôi đã chỉ định vị trí bắt đầu là 5. Vì số ký tự sẽ được trích xuất không được chỉ định, quá trình trích xuất chạy đến cuối chuỗi.

Đây là một ví dụ khác:

SELECT substring('Guru99' from 5 for 2);

Lệnh sẽ trả về như sau:

Chúng tôi đã bắt đầu trích xuất ở vị trí 5 và 2 ký tự đã được trích xuất.

Hãy xem xét bảng Sách được đưa ra dưới đây:

Chúng tôi muốn có một ý tưởng sơ bộ về tên của mỗi cuốn sách. Tuy nhiên, chúng tôi chỉ có thể trích xuất 15 ký tự đầu tiên từ cột tên của bảng:

SELECTid,SUBSTRING(name, 1, 15 ) AS name_initialFROMBookORDER BYid;

Lệnh sẽ trả về như sau:

Bây giờ chúng tôi có một ý tưởng sơ bộ về tên của mỗi cuốn sách.

Khớp các chuỗi con với Biểu thức chính quy SQL

Trong PostgreSQL, chúng ta có thể trích xuất một chuỗi con phù hợp với một biểu thức chính quy POSIX được chỉ định. Trong trường hợp này, hàm chuỗi con được sử dụng với cú pháp sau:

SUBSTRING(string FROM matching_pattern)

hoặc là

SUBSTRING(string, matching_pattern);

Dưới đây là giải thích về các thông số trên:

Chuỗi là chuỗi nguồn có kiểu dữ liệu là varchar, char, string, v.v.

Match_pattern là mẫu được sử dụng để tìm kiếm trong chuỗi.

Ví dụ:

SELECTSUBSTRING ('Your age is 22','([0-9]{1,2})') as age;

Lệnh sẽ trả về như sau:

Chuỗi đầu vào của chúng tôi là tuổi của bạn là 22. Trong mẫu, chúng tôi đang tìm kiếm một mẫu số trong chuỗi của chúng tôi khi tìm thấy chuỗi này, hàm chuỗi con chỉ nên trích xuất hai ký tự.

Sử dụng pgAdmin

Bây giờ chúng ta hãy xem các hành động được thực hiện như thế nào bằng cách sử dụng pgAdmin.

Các truy vấn trên mà chúng ta không cần cơ sở dữ liệu có thể được thực thi trực tiếp từ cửa sổ trình soạn thảo truy vấn. Chỉ cần làm như sau:

Bước 1) Đăng nhập vào tài khoản pgAdmin của bạn.

Bước 2) Nhấp vào biểu tượng Công cụ truy vấn.

Cửa sổ trình soạn thảo truy vấn sẽ được mở.

Bước 3) Nhập truy vấn sau vào cửa sổ trình soạn thảo.

SELECT substring('Guru99' for 4);

Bước 4) Nhấp vào biểu tượng Execute để thực hiện truy vấn.

Nó sẽ trả về như sau:

Ví dụ 2:

SELECT substring('Guru99' from 1 for 4);

Nó sẽ trả về như sau:

Đây là ví dụ tiếp theo:

SELECT substring('Guru99' from 5);

Nó sẽ trả về như sau:

Ví dụ 3:

SELECT substring('Guru99' from 5 for 2);

Nó sẽ trả về như sau:

Bây giờ, chúng ta hãy chạy ví dụ bằng cách sử dụng bảng Sách của cơ sở dữ liệu Demo:

Bước 1) Đăng nhập vào tài khoản pgAdmin của bạn.

Bước 2)

  1. Từ thanh điều hướng bên trái - Nhấp vào Cơ sở dữ liệu.
  2. Nhấp vào Demo.

Bước 3) Nhập truy vấn vào trình chỉnh sửa truy vấn:

SELECTid,SUBSTRING(name, 1, 15 ) AS name_initialFROMBookORDER BYid;

Bước 4) Nhấp vào nút Thực thi.

Nó sẽ trả về như sau:

Bây giờ chúng tôi có một ý tưởng cơ bản về tên của mọi cuốn sách.

Khớp các chuỗi con với Biểu thức chính quy SQL

Để thực hiện điều tương tự trên pgAdmin, hãy làm như sau:

Bước 1) Đăng nhập vào tài khoản pgAdmin của bạn.

Bước 2) Nhấp vào biểu tượng Công cụ truy vấn.

Cửa sổ trình soạn thảo truy vấn sẽ được mở.

Bước 3) Nhập truy vấn sau vào cửa sổ trình soạn thảo.

SELECTSUBSTRING ('Your age is 22','([0-9]{1,2})') as age;

Bước 4) Nhấp vào biểu tượng Execute để thực hiện truy vấn.

Nó sẽ trả về như sau:

Tóm lược:

  • Hàm PostgreSQL Substring chỉ giúp giải nén và trả về một phần của chuỗi.
  • Ký tự đầu tiên của chuỗi nằm ở vị trí 1.
  • Nếu số ký tự được trích xuất từ ​​chuỗi không được chỉ định, hàm sẽ trích xuất các ký tự từ vị trí bắt đầu được chỉ định đến cuối chuỗi.
  • Nếu số ký tự được trích xuất được chỉ định, thì chỉ số ký tự đó sẽ được trích xuất.

Tải xuống Cơ sở dữ liệu được sử dụng trong Hướng dẫn này