sql >> Databasteknik >  >> RDS >> Mysql

Mysql :slumpvis sortera än sortera efter en specifik kolumn

Du bör vända på det:

SELECT * FROM infos WHERE category=...
ORDER BY rate DESC, like DESC, RAND();

På så sätt sorteras den efter frekvens, sedan gilla och slutligen slumpmässig om frekvens och like är lika.

Din ursprungliga ORDER BY med RAND() fungerar inte heller eftersom du använder två ORDER BY-satser.




  1. Är det mer effektivt att separera stora och små relaterade data i en SQL-tabells kolumn?

  2. SQL:Välj Top 3 Records + Sum of Quantity

  3. MYSQL väljer alla poster där användarnamn och datumpar förekommer mer än en gång

  4. mysqldump från en fråga