Mysql
 sql >> Baza danych >  >> RDS >> Mysql

MySQL match() przeciwko() — kolejność według trafności i kolumny?

To może nadaj większe znaczenie wybranej części głowy. Nie podwoi to, ale może być wystarczająco dobre dla twojego dobra:

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

Alternatywą, którą również chcesz zbadać, jeśli masz możliwość zmiany silnika bazy danych, jest Postgres . Pozwala ustawić wagę operatorów i bawić się rankingiem.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. NULL w MySQL (wydajność i pamięć masowa)

  2. rails + MySQL na OSX:Biblioteka nie załadowana:libmysqlclient.18.dylib

  3. PDOException „nie można znaleźć sterownika”

  4. Używanie JDeveloper z bazą danych MySQL i bazą danych Oracle na AWS RDS, część 2

  5. Przegląd replikacji krzyżowej PostgreSQL i MySQL