Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> SQL

Cách dùng lệnh SQL CONTAINS

SQL có nhiều statement/function truy vấn database lấy thông tin hữu ích. Hàm CONTAINS() là một trong số đó. Hàm này không phải hàm SQL chuẩn – tùy database, CONTAINS() hoạt động khác nhau. Bài viết nói về CONTAINS() trong SQL Server và khác biệt với database khác.

Cú pháp và dùng cơ bản

Cốt lõi: CONTAINS() nhận 1 substring, tìm xem có trong chuỗi khác không. Với Microsoft SQL Server, CONTAINS() cho phép full-text pattern match search trên bảng. Trả về boolean (true/false).

SELECT <tenCot> FROM <tenBang> WHERE CONTAINS (<tenCot>, '<chuoiCon>');

Giá trị trong <> là tên tùy chỉnh. Substring trong dấu nháy đơn. Tên cột là biến đặt khi tạo bảng.

CREATE TABLE MyTable ([name] varchar(26), [occupation] varchar(57)) ;
INSERT INTO MyTable ([name], [occupation]) VALUES ('User 1', 'Web Developer'), ('User 2', 'Musician'), ('User 3', 'Doctor') ;
SELECT name, occupation FROM myTable WHERE CONTAINS (name, 'User');

Nếu bảng setup full-text indexed, query trên chạy được. Tìm pattern substring toàn bộ – không tìm sai chính tả hay từ đồng nghĩa.

Nếu không chắc setup full-text index, dùng mệnh đề LIKE. Tương tự CONTAINS nhưng dễ setup out-of-the-box.

SELECT name, occupation FROM MyTable WHERE name LIKE 'User%';

% sau 'User' = bất kỳ ký tự sau 'User'. Kết quả trả về 3 user.

Database khác dùng CONTAINS khác – không nhất thiết giống SQL Server.

Xem tài liệu database tương ứng để biết thêm. Về LIKE clause, xem bài viết James Gallagher trên Career Karma.