Xem thêm

Ký Tự Đại Diện Wildcard Trong SQL: Tư duy và ứng dụng thông qua ví dụ

Huy Erick
Testing là quá trình quan trọng để đảm bảo chất lượng sản phẩm phần mềm. Trong testing, việc nắm vững truy vấn SQL sẽ giúp bạn nhanh chóng thực hiện các chức năng cần truy...

Testing là quá trình quan trọng để đảm bảo chất lượng sản phẩm phần mềm. Trong testing, việc nắm vững truy vấn SQL sẽ giúp bạn nhanh chóng thực hiện các chức năng cần truy vấn và tìm kiếm dữ liệu. Truy vấn SQL sử dụng ký tự đại diện (Wildcard) giúp bạn tìm kiếm dữ liệu một cách linh hoạt và hiệu quả.

Ký tự "%": Tìm kiếm dựa trên một chuỗi ký tự

1. Cú pháp và Mô tả

Cú pháp Toán Tử LIKE Mô Tả 1 WHERE column_name LIKE 'a%' Tìm giá trị bắt đầu với "a" 2 WHERE column_name LIKE '%a' Tìm giá trị kết thúc với "a" 3 WHERE column_name LIKE '%a%' Tìm giá trị có "a" ở bất kỳ vị trí nào 4 WHERE column_name LIKE 'a%o' Tìm giá trị bắt đầu với "a" và kết thúc với "o"

2. Ví dụ áp dụng

Hãy xem các ví dụ sau để hiểu rõ hơn về cách sử dụng ký tự "%":

Ví dụ 1: Tìm tất cả các thành viên QA có tên bắt đầu bằng chữ "T":

SELECT * FROM thuong.qa_member WHERE qa_full_name LIKE 'T%';

QA Members starting with T

Ví dụ 2: Tìm tất cả các thành viên QA có tên kết thúc bằng chữ "Trinh":

SELECT * FROM thuong.qa_member WHERE qa_full_name LIKE '%Trinh';

QA Members ending with Trinh

Ví dụ 3: Tìm tất cả các thành viên QA có tên chứa từ "Thị" ở bất kỳ vị trí nào:

SELECT * FROM thuong.qa_member WHERE qa_full_name LIKE '%Thị%';

QA Members with Thị in their names

Ví dụ 4: Tìm tất cả các thành viên QA có tên bắt đầu bằng "Nguyễn" và kết thúc bằng "h":

SELECT * FROM thuong.qa_member WHERE qa_full_name LIKE 'Nguyễn%h';

QA Members starting with Nguyễn and ending with h

Ký tự "_": Tìm kiếm dựa trên ký tự đơn

1. Cú pháp và Mô tả

Cú pháp Toán Tử LIKE Mô Tả 1 WHERE column_name LIKE '_a%' Tìm giá trị có "a" ở vị trí thứ hai 2 WHERE columnname LIKE 'a%%' Tìm giá trị bắt đầu với "a" và có ít nhất ba ký tự 3 WHERE column_name LIKE '_a%o' Tìm giá trị có "a" ở vị trí thứ hai và kết thúc bằng "o"

2. Ví dụ áp dụng

Ví dụ 1: Tìm tất cả các thành viên QA có tên chứa "u" ở vị trí thứ hai:

SELECT * FROM thuong.qa_member WHERE qa_short_name LIKE '_u%';

QA Members with u at the second position

Ví dụ 2: Tìm tất cả các thành viên QA có tên bắt đầu bằng "T" và có ít nhất ba ký tự:

SELECT * FROM thuong.qa_member WHERE qa_short_name LIKE 'T%_%';

QA Members starting with T and having at least three characters

Ví dụ 3: Tìm tất cả các thành viên QA có tên có "u" ở vị trí thứ hai và kết thúc bằng "g":

SELECT * FROM thuong.qa_member WHERE qa_short_name LIKE '_u%g';

QA Members with u at the second position and ending with g

Ký tự "[charlist]": Tìm kiếm dựa trên một tập hợp ký tự

Cú pháp: Tìm tất cả các thành viên QA có tên bắt đầu bằng "T" hoặc "L":

SELECT * FROM thuong.qa_member WHERE qa_short_name LIKE '[TL]%';

Kết quả sẽ được như sau: QA Members starting with T or L

Ký tự "[! charlist]": Tìm kiếm dựa trên không phù hợp với một tập hợp ký tự

Cú pháp: Tìm tất cả các thành viên QA không bắt đầu bằng "T" hoặc "L":

SELECT * FROM thuong.qa_member WHERE qa_short_name LIKE '[!TL]%';

hoặc

SELECT * FROM thuong.qa_member WHERE qa_short_name NOT LIKE '[TL]%';

QA Members not starting with T or L

Với các ký tự đại diện như "%", "_", "[charlist]", và "[! charlist]", bạn có thể dễ dàng tìm kiếm dữ liệu trong truy vấn SQL một cách linh hoạt và mạnh mẽ. Áp dụng chúng để tăng tốc độ và hiệu suất của quá trình testing của bạn!

1