Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Kolejność MYSQL według polubień/nielubi i popularności

Jest to klasyczny problem, jak oceniać głosowanie za/przeciw, plus/minus, lubię/nie lubię i tak dalej. Istnieje kilka możliwych rozwiązań, ale mogą one dać zły wynik w określonych warunkach.

Gorąco polecam przeczytanie i korzystanie z kolejności jak w How Not To Sort By Average Rating

Przykładowy kod (możesz go łatwo dostosować do swoich potrzeb):

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. Wzorzec nazwy tabeli nie może być NULL ani pusty w java

  2. $db =nowe PDO(mysql:host=$host;db_name=$db_name, $user, $pass);

  3. Połącz wiele wierszy podrzędnych w jeden wiersz MYSQL bez stałego kodowania lub wartości min/max

  4. Mysql, aby wybrać rekord miesięczny, nawet jeśli dane nie istnieją

  5. Błąd krytyczny:wywołanie niezdefiniowanej funkcji mysqli_result()