Hướng dẫn MySQL này giải thích cách sử dụng điều kiện giống như MySQL để thực hiện khớp mẫu với cú pháp và ví dụ.LIKE condition to perform pattern matching with syntax and examples.
Cú pháp
Cú pháp cho điều kiện tương tự trong MySQL là:
expression LIKE pattern [ ESCAPE 'escape_character' ]
Tham số hoặc đối số
Biểu thức ký tự biểu thức như một cột hoặc trường.Một biểu thức ký tự chứa khớp mẫu. Các mẫu mà bạn có thể chọn là:
Phần trăm | Cho phép bạn khớp bất kỳ chuỗi nào có độ dài [bao gồm cả độ dài bằng không] |
_ | Cho phép bạn khớp trên một ký tự duy nhất |
Ví dụ - Sử dụng % ký tự đại diện [phần trăm ký tự đại diện]
Ví dụ như MySQL thích đầu tiên mà chúng ta sẽ xem xét liên quan đến việc sử dụng thẻ đại diện % [phần trăm ký tự đại diện].
Hãy giải thích cách % ký tự đại diện hoạt động trong điều kiện MySQL như thế nào. Chúng tôi muốn tìm tất cả các khách hàng mà Last_Name bắt đầu bằng 'SM'.
SELECT customer_name FROM customers WHERE last_name LIKE 'Sm%';
Bạn cũng có thể sử dụng % Wildcard nhiều lần trong cùng một chuỗi. Ví dụ,
SELECT customer_name FROM customers WHERE last_name LIKE '%it%';
Trong ví dụ về điều kiện giống như MySQL này, chúng tôi đang tìm kiếm tất cả các khách hàng có Last_Name chứa các ký tự 'nó'.
Ví dụ - Sử dụng _ Wildcard [Undercore Wildcard]
Tiếp theo, chúng ta hãy giải thích cách _ Wildcard [Undercore Wildcard] hoạt động trong điều kiện MySQL như thế nào. Hãy nhớ rằng _ Wildcard chỉ tìm kiếm một nhân vật.
Ví dụ:
SELECT supplier_name FROM suppliers WHERE supplier_name LIKE 'Sm_th';
Ví dụ về điều kiện giống như MySQL này sẽ trả về tất cả các nhà cung cấp có nhà cung cấp dài 5 ký tự, trong đó hai ký tự đầu tiên là 'SM' và hai ký tự cuối cùng là 'thứ'. Ví dụ: nó có thể trả lại các nhà cung cấp có nhà cung cấp_name là 'Smith', 'Smyth', 'Smath', 'Smeth', v.v.
Đây là một ví dụ khác:
SELECT * FROM suppliers WHERE account_number LIKE '12345_';
Bạn có thể thấy rằng bạn đang tìm kiếm một số tài khoản, nhưng bạn chỉ có 5 trong số 6 chữ số. Ví dụ trên, sẽ lấy lại 10 bản ghi có khả năng trở lại [trong đó giá trị bị thiếu có thể bằng bất cứ thứ gì từ 0 đến 9]. Ví dụ: nó có thể trả về các nhà cung cấp có số tài khoản là:
123450, 123451, 123452, 123453, 123454, 123455, 123456, 123457, 123458, 123459
Ví dụ - Sử dụng không vận hành
Tiếp theo, chúng ta hãy xem cách bạn sẽ sử dụng toán tử không có ký tự đại diện.
Hãy sử dụng % Wilcard với toán tử không. Bạn cũng có thể sử dụng điều kiện giống như MySQL để tìm các nhà cung cấp có tên không bắt đầu bằng 'G'.not start with 'G'.
Ví dụ:
SELECT supplier_name FROM suppliers WHERE supplier_name NOT LIKE 'G%';
Ví dụ về điều kiện giống như MySQL này sẽ trả về tất cả các nhà cung cấp có nhà cung cấp dài 5 ký tự, trong đó hai ký tự đầu tiên là 'SM' và hai ký tự cuối cùng là 'thứ'. Ví dụ: nó có thể trả lại các nhà cung cấp có nhà cung cấp_name là 'Smith', 'Smyth', 'Smath', 'Smeth', v.v.not start with 'G'.
Đây là một ví dụ khác:
Bạn có thể thấy rằng bạn đang tìm kiếm một số tài khoản, nhưng bạn chỉ có 5 trong số 6 chữ số. Ví dụ trên, sẽ lấy lại 10 bản ghi có khả năng trở lại [trong đó giá trị bị thiếu có thể bằng bất cứ thứ gì từ 0 đến 9]. Ví dụ: nó có thể trả về các nhà cung cấp có số tài khoản là:
123450, 123451, 123452, 123453, 123454, 123455, 123456, 123457, 123458, 123459
Ví dụ - Sử dụng không vận hành
Ví dụ:
SELECT * FROM suppliers WHERE supplier_name LIKE 'G\%';
Ví dụ về điều kiện giống như MySQL này sẽ trả về tất cả các nhà cung cấp có nhà cung cấp dài 5 ký tự, trong đó hai ký tự đầu tiên là 'SM' và hai ký tự cuối cùng là 'thứ'. Ví dụ: nó có thể trả lại các nhà cung cấp có nhà cung cấp_name là 'Smith', 'Smyth', 'Smath', 'Smeth', v.v.
Đây là một ví dụ khác:
SELECT * FROM suppliers WHERE supplier_name LIKE 'G!%' ESCAPE '!';
Bạn có thể thấy rằng bạn đang tìm kiếm một số tài khoản, nhưng bạn chỉ có 5 trong số 6 chữ số. Ví dụ trên, sẽ lấy lại 10 bản ghi có khả năng trở lại [trong đó giá trị bị thiếu có thể bằng bất cứ thứ gì từ 0 đến 9]. Ví dụ: nó có thể trả về các nhà cung cấp có số tài khoản là:
123450, 123451, 123452, 123453, 123454, 123455, 123456, 123457, 123458, 123459
SELECT * FROM suppliers WHERE supplier_name LIKE 'H%\%';
Ví dụ - Sử dụng không vận hành
Tiếp theo, chúng ta hãy xem cách bạn sẽ sử dụng toán tử không có ký tự đại diện.
SELECT * FROM suppliers WHERE supplier_name LIKE 'H%!%' ESCAPE '!';
Hãy sử dụng % Wilcard với toán tử không. Bạn cũng có thể sử dụng điều kiện giống như MySQL để tìm các nhà cung cấp có tên không bắt đầu bằng 'G'.
Bằng cách đặt toán tử không ở phía trước điều kiện giống như MySQL, bạn có thể truy xuất tất cả các nhà cung cấp mà nhà cung cấp_name không bắt đầu với 'g'.
Ví dụ:
SELECT customer_name FROM customers WHERE last_name LIKE 'Sm%';0
Ví dụ về điều kiện giống như MySQL này sẽ trả về tất cả các nhà cung cấp có nhà cung cấp dài 5 ký tự, trong đó hai ký tự đầu tiên là 'SM' và hai ký tự cuối cùng là 'thứ'. Ví dụ: nó có thể trả lại các nhà cung cấp có nhà cung cấp_name là 'Smith', 'Smyth', 'Smath', 'Smeth', v.v.