sql >> Database teknologi >  >> RDS >> Mysql

MySQL match() mod() - rækkefølge efter relevans og kolonne?

Dette måske give den øgede relevans til hoveddelen, som du ønsker. Det vil ikke fordoble det, men det kan muligvis godt nok for din skyld:

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

Et alternativ, som du også vil undersøge, hvis du har fleksibiliteten til at skifte DB-motor, er Postgres . Det giver mulighed for at indstille vægten af ​​operatører og at lege med rangeringen.



  1. Fejl ved udskrivning af REFCURSOR-variabel som OUT-parameter i procedure i Oracle 11g

  2. SQL Server, hvordan indstilles automatisk stigning efter oprettelse af en tabel uden tab af data?

  3. Tabelprøve og andre metoder til at få tilfældige tuples

  4. hvordan får man det første eller (et hvilket som helst) element fra en LiveData List i Android MVVM-arkitektur?