Toán tử đại diện WILDCARD trong SQL
WILDCARD hay còn được gọi là kí tự đại diện được sử dụng cùng với câu lệnh LIKE trong SQL để so sánh một giá trị với các giá trị tương tự.
SQL hỗ trợ hai toán tử đại diện kết hợp với toán tử LIKE là kí hiệu phần trăm (%) và dấu gạch dưới (_).
Kí tự đại diện | Mô tả |
Kí hiệu phần trăm (%) | Đại diện cho một hoặc nhiều ký tự. Lưu ý: MS Access sử dụng kí tự dấu hoa thị (*) thay kí tự phần trăm (%) |
Dấu gạch dưới (_) | Đại diện cho cho một kí tự đơn. Lưu ý: MS Access sử dụng dấu chấm hỏi (?) thay vì gạch dưới (_) |
Dấu phần trăm thể đại diện cho chuỗi kí tự với bất kì độ dài nào (bao gồm cả độ dài 0). Dấu gạch dưới đại diện cho một số hoặc một kí tự. Những kí hiệu này có thể được sử dụng kết hợp.
Cú pháp sử dụng WILDCARD trong SQL
Cú pháp cơ bản của '%' và '_' như sau:
SELECT FROM ten_bang
WHERE cot LIKE 'XXXX%'
hoặc:
SELECT FROM ten_bang
WHERE cot LIKE '%XXXX%'
hoặc:
SELECT FROM ten_bang
WHERE cot LIKE 'XXXX_'
hoặc:
SELECT FROM ten_bang
WHERE cot LIKE '_XXXX'
hoặc:
SELECT FROM ten_bang
WHERE cot LIKE '_XXXX_'
Bạn có thể kết hợp N điều kiện bằng cách sử dụng các toán tử AND hoặc OR. Ở đây, XXXX có thể là bất kỳ giá trị số hay chuỗi nào.
Ví dụ về toán tử WILDCARD
Bảng dưới đây có một vài ví dụ cho thấy mệnh đề WHERE có mệnh đề LIKE với toán tử WILDCARD ‘%’ và ‘_’ khác nhau:
STT | Câu lệnh và mô tả |
1 | WHERE SALARY LIKE '200%' Tìm tất cả các giá trị bắt đầu bằng 200. |
2 | WHERE SALARY LIKE '%200%' Tìm tất cả các giá trị có 200 vị trí bất kỳ. |
3 | WHERE SALARY LIKE '_00%' Tìm tất cả các giá trị có 00 ở vị trí thứ hai và thứ ba. |
4 | WHERE SALARY LIKE '2_%_%' Tìm tất cả các giá trị bắt đầu bằng 2 và có ít nhất 3 kí tự. |
5 | WHERE SALARY LIKE '%2' Tìm tất cả các giá trị kết thúc bằng 2. |
6 | WHERE SALARY LIKE '_2%3' Tìm tất cả các giá trị có vị trí 2 ở vị trí thứ hai và kết thúc bằng 3. |
7 | WHERE SALARY LIKE '2___3' Tìm tất cả các giá trị trong số năm chữ số bắt đầu bằng 2 và kết thúc bằng 3. |
Chúng ta hãy lấy một ví dụ thực tế, xem xét bảng NHANVIEN có các bản ghi như dưới đây:
+----+----------+-----+-----------+----------+ | ID | TEN |TUOI | DIACHI | LUONG | +----+----------+-----+-----------+----------+ | 1 | Thanh | 32 | Haiphong | 2000.00 | | 2 | Loan | 25 | Hanoi | 1500.00 | | 3 | Nga | 23 | Hanam | 2000.00 | | 4 | Manh | 25 | Hue | 6500.00 | | 5 | Huy | 27 | Hatinh | 8500.00 | | 6 | Cao | 22 | HCM | 4500.00 | | 7 | Lam | 24 | Hanoi | 10000.00 | +----+----------+-----+-----------+----------+
Ví dụ hiển thị tất cả các bản ghi từ bảng NHANVIEN mà LUONG bắt đầu bằng 200, ta thực hiện như sau:
SQL> SELECT * FROM NHANVIEN
WHERE LUONG LIKE '200%';
Kết quả trả về hiển thị là:
+----+----------+-----+-----------+----------+ | ID | TEN |TUOI | DIACHI | LUONG | +----+----------+-----+-----------+----------+ | 1 | Thanh | 32 | Haiphong | 2000.00 | | 3 | Nga | 23 | Hanam | 2000.00 | +----+----------+-----+-----------+----------+
Trong phần tiếp theo, chúng ta sẽ tìm hiểu về các hàm xử lý Date trong SQL, các bạn nhớ theo dõi nhé.
Bạn nên đọc
Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:


Cũ vẫn chất
-
Cách kiểm tra lượt view Story Instagram nổi bật
Hôm qua -
Top 5 ngôn ngữ lập trình tốt nhất cho trẻ em hiện nay
Hôm qua -
7 tác động tiêu cực của mạng xã hội đối với người dùng
Hôm qua -
Hướng dẫn sửa lỗi Access Denied trong quá trình truy cập file hoặc thư mục trên Windows
Hôm qua -
Cách tìm lại bình luận trên YouTube rất đơn giản
Hôm qua -
Cách bật, tắt macro trên Excel
Hôm qua -
6 công cụ sáng tác nhạc và lời bài hát miễn phí với sự trợ giúp của AI
Hôm qua -
Hướng dẫn chèn caption cho ảnh trong Word
Hôm qua -
Tổng hợp bộ hình nền iPhone 14 và iPhone 14 Pro
Hôm qua -
9 khác biệt chính giữa ChatGPT và Chatbot AI của Bing
Hôm qua