Full-Text Search là gì? Hướng dẫn sử dụng Full-Text Search trong SQL Server

Full-Text Search là gì ? Và tất cả chúng ta sử dụng nó như thế nào ?

Trong mỗi ứng dụng Application hay website thì tính năng tìm kiếm thì không khi nào thiếu. Vậy nên tính năng tìm kiếm là rất quan trọng .

Full-Text Search

 

Như những bạn đã biết, thường tìm kiếm tất cả chúng ta thường sử dụng từ khóa “ LIKE ” để trả về cho tất cả chúng ta tác dụng gần đúng. Tuy nhiên, trong trong thực tiễn thì với việc tìm kiếm sử dụng từ khóa “ LIKE ” nhiều lúc cho tất cả chúng ta hiệu quả không được mong ước. Mình xin ví dụ :
Ví dụ :
Ở một website bán hàng, khi tất cả chúng ta đánh cụm từ “ giày bóng dá ”, người dùng mong ước nhận được hiệu quả có từ : “ giày bóng đá ”, “ bóng đá ”, “ đá bóng ”, ” giày ”, ” bóng ” … Vị trí của những từ Open trong tác dụng hoàn toàn có thể không giống với cụm từ đưa vào, mà có sự đảo ngược lại, đồng nghĩa tương quan, trái nghĩa .
Các bạn hoàn toàn có thể tìm kiếm này bằng cách code, tuy nhiên tất cả chúng ta sẽ triển khai rất khó khăn vất vả và phức tạp. Ngoài ra, Full Text Search sẽ cho vận tốc tìm kiếm nhanh hơn cách thường thì .
Hiện tại những hệ quản trị cơ sở tài liệu như SQL SERVER hay MY SQL đều có đã tích hợp sẵn tính năng FULL-TEXT Search cho tất cả chúng ta sử dụng .

  • Tìm từ đồng nghĩa (VD đưa vào là: “man”, sẽ tìm các từ có “man” và “men”).
  • Tìm từ gần đúng, so từng từ trong cụm từ, đảo vị trí.
  • Hỗ trợ tìm kiếm có đấu (VD đưa vào: “Giay bong da”, vẫn sẽ tìm ra kết quả “giày bóng đá”).
  • Loại bỏ các từ khóa nhiễu (noise).

Hướng dẫn kiểm tra Full-Text Search đã được thiết lập hay chưa

Đầu tiên là kiểm tra thiết lập Full Text Search, mở SQL Studio Management. Các bạn kiểm tra bằng câu truy vấn sau :

SELECT SERVERPROPERTY('IsFullTextInstalled')

nếu câu lệnh cho hiệu quả 0 nghĩa là Full-text chưa được setup. hiệu quả bằng 1 nghĩa là đã được setup

Sử dụng Full-text Search trên SQL Server

Để thử nghiệm Full-text Search, tất cả chúng ta cần có database. Mình đã sẵn sàng chuẩn bị sẵn cho những bạn 1 database mẫu sản phẩm với hơn 1000 entries .

Bước 1 : Chúng ta bắt đầu cài đặt catalog cho database.

Tiếp theo những bạn vui mắt chọn Accent-insensitive .

Kết quả sau khi tạo xong catalog

Bước 2 : Tạo full-text index cho cột Name của sản phẩm. Chúng ta có thể define Full-text index bằng câu lệnh query, trong bài này mình sẽ hướng dẫn cách dùng Full-text Wizard

Click phải vào bảng cần tạo full-text index -> Chọn Full-Text index -> define Full-text index

Click Next ở các bước tiếp theo cho tới khi xuất hiện cửa sổ Select Table Columns

Tiếp theo check vào cột cần tạo index và chọn ngôn từ tương ứng

Tiếp theo chọn Automatically. Mỗi khi có thay đổi (Insert, update, delete), full-text index sẽ tự động cập nhật. Việc này có thể làm quá trình insert/update/delete chậm đi.

Chọn Full-Text Catalog đã tạo ở Bước 1

Nhấn Finish ở bước cuối cùng

Kiểm tra hoạt động giải trí của Full-Text Search

Vậy là những bước thực thi tạo catalog trên database đã hoàn tất. Bây giờ, tất cả chúng ta khởi đầu test Full text search nó khác với “ LIKE ” như thế nào ?
Ví dụ, tất cả chúng ta muốn tìm tổng thể những mẫu sản phẩm có chữ “ Bình ” trong tên .
Ta cùng test thử với 3 câu query như sau

SELECT * FROM dbo.Product WHERE [Name] LIKE N'%binh%'
SELECT * FROM dbo.Product WHERE [Name] LIKE N'%bình%'
SELECT * FROM dbo.Product WHERE CONTAINS([Name],'binh')

Ở câu query đầu tiên sẽ không cho ra kết quả gì hết. vì lý do tìm kiến like với từ khóa binh  (không dấu)

Ở câu query thứ 2 và 3 cho tất cả chúng ta tác dụng như nhau .

Như ta thấy, với câu query cuối cùng (Có CONTAINS, chúng ta chỉ cần chữ ‘binh‘ là đã có kết quả đúng)

Ta liên tục thử với 2 câu query sau

SELECT * FROM dbo.Product WHERE [Name] LIKE N'%chu%'
SELECT * FROM dbo.Product WHERE CONTAINS([Name],'chu')

Ta sẽ thấy, với kí tự “ chu ”, toán tử LIKE cho hiệu quả có “ chuột ”, trong khi Full-text tìm những tác dụng có từ “ chữ ”, “ chủ ” …, đúng với nhu yếu hơn

Ngoài toàn tử CONTAINS, còn hỗ trợ toán tự FREETEXT, FREETEXTTABLE,… cũng rất hay. Các bạn có thể tham khảo thêm tài liệu riêng về query tại đây 

Tham khảo các dịch vụ VPS – CLoud Server tại P.A
https://www.pavietnam.vn/vn/vps-server.html
Xem thêm nhiều kiến thức về Cơ sử dữ liêu tại đây
Truy cập vào đây để nhận được thông tin ưu đãi -khuyến mãi thường xuyên
https://www.pavietnam.vn/vn/tin-tuc-chuong-trinh-khuyen-mai-ten-mien-hosting.html

5
/
5

(

1
bầu chọn
)

No related posts .