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

mysql SORTER EFTER mængden af ​​unikke ordmatches

Du kan gøre det på mange måder for eksempel

ORDER BY SIGN(LOCATE('dog',content))+
         SIGN(LOCATE('swim',content))+
         SIGN(LOCATE('better',content)) DESC

SQLFiddle-demo

eller med CASE

ORDER BY 
CASE WHEN content LIKE '%dog%' 
        THEN 1
        ELSE 0
END
+
CASE WHEN content LIKE '%swim%' 
        THEN 1
        ELSE 0
END
+
CASE WHEN content LIKE '%better%' 
        THEN 1
        ELSE 0
END

DESC


  1. Rul tilbage til traditionel replikering fra GTID

  2. opdatere en kolonne ved at trække en værdi fra

  3. Sådan fjerner du cifre fra slutningen af ​​strengen ved hjælp af SQL

  4. Hvordan henter jeg decimaler, når jeg afrunder et gennemsnit i SQL