Mysql
 sql >> база данни >  >> RDS >> Mysql

MYSQL подреждане по харесване/нехаресване и популярност

Това е класически проблем как да класирате гласуване за/против, плюс/минус, харесване/нехаресване и т.н. Има няколко възможни решения, но те може да дадат грешен резултат при определени условия.

Горещо препоръчвам да прочетете и използвате подреждане като в How Not To Sort By Average Rating

Примерен код (можете лесно да го адаптирате за вашите нужди):

SELECT id, ((positive + 1.9208) / (positive + negative) - 
                1.96 * SQRT((positive * negative) / (positive + negative) + 0.9604) / 
                       (positive + negative)) / (1 + 3.8416 / (positive + negative)) 
       AS ci_lower_bound 
FROM your_tab 
WHERE positive + negative > 0 
ORDER BY ci_lower_bound DESC;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MYSQL Дата и час, закръглено до най-близкия час

  2. Кога да използвате стойности, разделени със запетая, в колона на DB?

  3. MySQL едно към много присъединяване с Group By връща само едно наблюдение

  4. Как да задам изчакване на заявка в Sequelize?

  5. Преброяване на данни от множество таблици с помощта на SUM