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

MySQL so khớp () với () - thứ tự theo mức độ liên quan và cột?

Điều này có thể tăng mức độ liên quan đến phần đầu mà bạn muốn. Nó sẽ không tăng gấp đôi, nhưng nó có thể đủ tốt cho lợi ích của bạn:

SELECT pages.*,
       MATCH (head, body) AGAINST ('some words') AS relevance,
       MATCH (head) AGAINST ('some words') AS title_relevance
FROM pages
WHERE MATCH (head, body) AGAINST ('some words')
ORDER BY title_relevance DESC, relevance DESC

-- alternatively:
ORDER BY title_relevance + relevance DESC

Một giải pháp thay thế mà bạn cũng muốn điều tra, nếu bạn có thể linh hoạt để chuyển đổi công cụ DB, là Postgres . Nó cho phép thiết lập trọng số của các toán tử và chơi xung quanh với xếp hạng.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Xóa khóa chính trong MySQL

  2. Làm thế nào để đếm từ trong MySQL / thay thế biểu thức chính quy?

  3. Viết lại lựa chọn mysql để giảm thời gian và ghi tmp vào đĩa

  4. MySQL:Cấp ** tất cả ** đặc quyền trên cơ sở dữ liệu

  5. Mysql Cải thiện Hiệu suất Tìm kiếm với các ký tự đại diện (%%)