sql >> Databasteknik >  >> RDS >> Mysql

Mysql fulltext boolesk sökning - sortera efter relevans och ytterligare ett fält

Du kan göra Left Join för det och kolla SQLFiddle här.

SELECT
  p.*,
       MATCH (title) AGAINST ('text' IN BOOLEAN MODE) AS score ,
       COUNT(li.id) AS total_likes 
FROM photos p
  LEFT JOIN likes li
    ON p.id = li.photo_id
     WHERE  MATCH (p.title) AGAINST ('text' IN BOOLEAN MODE) 
    GROUP BY 
      li.photo_id

ORDER BY 
      score , total_likes DESC



  1. Hur man skapar en användardefinierad postdatatypvariabel i Oracle Database

  2. Validerar användarnamn och lösenord från MySQL

  3. int till sträng i MySQL

  4. Laravel vältalig withCount() ska vara långsammare än bara med()