Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cung cấp cho một số trường mức độ liên quan nhiều hơn và sắp xếp theo mức độ liên quan trong tìm kiếm toàn văn mysql

Đầu tiên, tạo ba chỉ mục FULLTEXT:

* one on the title column
* one on the body column
* one on both title and body columns

Sau đó, tạo truy vấn của bạn theo cách sau:

SELECT field1, field2, field3, title, body,
MATCH (title) AGAINST ('word_to_search') AS rel_title,
MATCH (body) AGAINST ('word_to_search') AS rel_body
FROM table_to_use
WHERE MATCH (title,body) AGAINST ('word_to_search')
ORDER BY (rel_title*2)+(rel_body)

Điều này sẽ làm cho tiêu đề có mức độ liên quan gấp 2 lần so với nội dung.

Điều này khá hữu ích khi bạn cần cho phép sắp xếp nội dung, chẳng hạn như theo các thẻ (người dùng không xem được) vì nó cho phép bạn tinh chỉnh kết quả từ phía sau.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kết nối với DB từ một Tiện ích mở rộng của Chrome?

  2. mysql LIKE với phần trăm gấp đôi

  3. Session_start Chi tiết hồ sơ người dùng

  4. Lỗi quyền Mysql với 'tải dữ liệu'

  5. MySQL sắp xếp theo số lần xuất hiện