Trong lí giải này, bạn sẽ khám phá bí quyết sử dụng tân oán tử LIKE vào SQL Server nhằm kiểm tra coi chuỗi ký kết từ bỏ gồm khớp với mẫu sẽ hướng đẫn hay không.

Bạn đang xem: Câu lệnh like trong sql

Tổng quan về tân oán tử LIKE vào Squốc lộ Server

Tân oán tử LIKE vào SQL Server là 1 trong tân oán tử xúc tích và ngắn gọn xác định coi một chuỗi cam kết từ có khớp với mẫu đang chỉ định và hướng dẫn hay không. Một mẫu mã có thể bao hàm các cam kết tự thường thì với cam kết từ thay mặt đại diện.

Toán thù tử LIKE được sử dụng trong các mệnh đề WHERE của những câu lệnh SELECT, UPDATE cùng DELETE nhằm thanh lọc những bảng ghi dựa vào biểu thức khởp chủng loại.

Dưới đây minc họa cú pháp của toán tử LIKE vào SQL Server:

column | expression LIKE pattern

Pattern

Mẫu (pattern) là 1 trong chuỗi các ký từ để search tìm vào cột hoặc biểu thức. Nó rất có thể bao gồm các ký kết từ thay mặt đại diện hợp lệ sau:

Ký từ bỏ thay mặt đại diện phần trăm (%): ngẫu nhiên chuỗi nào gồm 0 hoặc các cam kết từ bỏ.Ký tự thay mặt gạch bên dưới (_): bất kỳ ký tự solo nào.Ký trường đoản cú đại diện thay mặt : ngẫu nhiên ký kết từ đối kháng làm sao vào tập sẽ hướng đẫn.: ngẫu nhiên ký kết trường đoản cú 1-1 như thế nào trong phạm vi vẫn chỉ định.<^>: Bất kỳ ký trường đoản cú đối kháng làm sao ko nằm trong list hoặc phạm vi.

Các cam kết tự đại diện thay mặt khiến cho tân oán tử LIKE linh hoạt hơn các toán tử đối chiếu chuỗi bằng (=) và ko bởi (!=).

ESCAPE

Ký trường đoản cú bay khuyên bảo toán thù tử LIKE xem các ký kết trường đoản cú đại diện là những cam kết trường đoản cú thường thì. Ký từ bay không có cực hiếm mặc định và đề xuất được ước lượng chỉ một ký kết trường đoản cú.

Toán tử LIKE trả về TRUE trường hợp cột hoặc biểu thức khớp cùng với chủng loại được chỉ định và hướng dẫn.

Để khước từ công dụng của toán thù tử LIKE, chúng ta sử dụng tân oán tử NOT LIKE nlỗi sau:

column | expression NOT LIKE pattern

lấy ví dụ như về toán tử LIKE vào Squốc lộ Server

Chúng tôi đang dụng bảng customers trong cơ sở tài liệu mẫu mã để gia công ví dụ mang đến toán tử LIKE vào SQL Server.

*

Sử dụng toán thù tử LIKE với ký trường đoản cú đại diện % vào Squốc lộ Server

lấy ví dụ dưới đây tra cứu tìm những quý khách hàng có bọn họ bắt đầu bằng vần âm Z:

SELECT customer_id, first_name, last_nameFROM sales.customersWHERE last_name LIKE "Z%"ORDER BY first_name;Đây là kết quả:

*

lấy ví dụ tiếp sau đây trả về những người sử dụng tất cả chúng ta kết thúc bởi chuỗi er:

SELECT customer_id, first_name, last_nameFROM sales.customersWHERE last_name LIKE "%er"ORDER BY first_name;Đây là kết quả:

*

Câu lệnh sau mang ra các quý khách có họ ban đầu bởi vần âm T và chấm dứt bởi vần âm s:

SELECT customer_id, first_name, last_nameFROM sales.customersWHERE last_name LIKE "T%s"ORDER BY first_name;Đây là kết quả:

*

Sử dụng tân oán tử LIKE cùng với ký kết trường đoản cú đại diện _ trong Squốc lộ Server

Dấu gạch men bên dưới (_) thay mặt đại diện cho 1 ký kết từ bỏ nhất. Câu lệnh sau trả về khách hàng bao gồm chúng ta chứa ký kết từ bỏ thứ hai là vần âm u:

SELECT customer_id, first_name, last_nameFROM sales.customersWHERE last_name LIKE "_u%"ORDER BY first_name; Đây là kết quả:

*

Giải say đắm mẫu _u% vào ví dụ trên:

Ký trường đoản cú gạch men bên dưới đầu tiên (_) khớp cùng với bất kỳ ký kết từ 1-1 làm sao.Chữ chiếc lắp thêm nhị u khớp đúng đắn với chữ u.Ký từ bỏ máy tía % khớp cùng với bất kỳ chuỗi cam kết từ như thế nào.

Sử dụng toán thù tử LIKE với cam kết tự thay mặt trong SQL Server

Dấu ngoặc vuông (<>) với 1 danh sách các cam kết từ, ví dụ, đại diện cho một cam kết tự nên là một trong những trong các ký kết từ bỏ được chỉ định trong danh sách.

lấy ví dụ như, truy nã vấn sau trả về đa số quý khách tất cả bọn họ bước đầu bằng ký kết từ Y hoặc Z:

SELECT customer_id, first_name, last_nameFROM sales.customersWHERE last_name LIKE "%"ORDER BY last_name;Đây là kết quả:

*
vào SQL Server">

Sử dụng tân oán tử LIKE cùng với ký kết từ đại diện thay mặt vào SQL Server

Dấu ngoặc vuông với phạm vi ký kết từ, ví dụ: thay mặt cho 1 ký từ bỏ bắt buộc nằm trong phạm vi được chỉ định và hướng dẫn.

Ví dụ: tróc nã vấn tiếp sau đây tìm tìm các người sử dụng tất cả họ bước đầu là các chữ cái phía trong phạm vi từ chữ cái A mang đến chữ cái C:

SELECT customer_id, first_name, last_nameFROM sales.customersWHERE last_name LIKE "%"ORDER BY first_name;Đây là kết quả:

*
trong Squốc lộ Server">

Sử dụng tân oán tử LIKE cùng với cam kết trường đoản cú thay mặt <^phạm vi> vào SQL Server

Dấu ngoặc vuông cùng với vết mũ (^) theo sau là 1 phạm vi, ví dụ: <^A-C> hoặc list ký kết từ, ví dụ: đại diện cho một ký kết từ không có vào danh sách phạm vi hoặc danh sách ký kết tự được hướng dẫn và chỉ định.

Ví dụ: truy hỏi vấn tiếp sau đây trả về các quý khách hàng bao gồm bọn họ không bước đầu bởi các chữ cái vào phạm vi từ vần âm A đến vần âm X:

SELECT customer_id, first_name, last_nameFROM sales.customersWHERE last_name LIKE "<^A-X>%"ORDER BY last_name;Đây là kết quả:

*
vào Squốc lộ Server">

Sử dụng tân oán tử NOT LIKE trong SQL Server

lấy ví dụ như sau áp dụng toán thù tử NOT LIKE để search tìm các người tiêu dùng có tên không được bước đầu bằng là chữ cái A:

SELECT customer_id, first_name, last_nameFROM sales.customersWHERE first_name NOT LIKE "A%"ORDER BY first_name;Đây là kết quả:

*

Sử dụng toán tử LIKE với ESCAPE vào SQL Server

Trước hết, họ sẽ tạo nên một bảng new mang lại ví dụ này:

CREATE TABLE sales.feedbacks ( feedback_id INT IDENTITY(1, 1) PRIMARY KEY, bình luận VARCHAR(255) NOT NULL);Thđọng nhị, cyếu một vài phiên bản ghi vào bảng sales.feedbacks:

INSERT INTO sales.feedbacks(comment)VALUES("Can you give me 30% discount?"), ("May I get me 30USD off?"), ("Is this having 20% discount today?");Thđọng cha, tầm nã vấn bình chọn dữ liệu trong bảng sales.feedbacks:

SELECT * FROM sales.feedbacks;Đây là kết quả:

*

Nếu bạn có nhu cầu tra cứu kiếm số đông bình luận gồm chuỗi 30% vào cột comment, chúng ta cũng có thể viết một tầm nã vấn như vậy này:

SELECT feedback_id, commentFROM sales.feedbacksWHERE bình luận LIKE "%30%";Đây là kết quả:

*

Truy vấn trả về các ý kiến tất cả cột bình luận cất chuỗi 30% cùng 30USD, phía trên không phải là vấn đề chúng tôi ý muốn hóng.

Để xử lý sự việc này, bạn phải áp dụng mệnh đề ESCAPE:

SELECT feedback_id, commentFROM sales.feedbacksWHERE phản hồi LIKE "%30!%%" ESCAPE "!";Đây là kết quả:

*

Trong truy vấn này mệnh đề ESCAPE hướng đẫn rằng ký kết tự ! là cam kết trường đoản cú bay. Nó trả lời toán tử LIKE coi cam kết tự % là 1 trong chuỗi ký kết trường đoản cú thường thì cố gắng vị cam kết tự thay mặt.

Lưu ý: ví như không tồn tại mệnh đề ESCAPE, truy vấn vấn đã trả về một tập tác dụng trống.

Xem thêm: Top 5 Game Giống Lol Trên Pc (Update 2021), Top 10 Game Moba Hay Cho Pc

Trong khuyên bảo này, các bạn đã học phương pháp áp dụng tân oán tử LIKE vào SQL Server để soát sổ xem một chuỗi ký tự bao gồm khớp cùng với mẫu đã chỉ định và hướng dẫn hay là không.