sql >> Databáze >  >> RDS >> Mysql

MYSQL řazení podle lajků/nelíbí a oblíbenosti

Toto je klasický problém, jak hodnotit kladné/protihlasující, plus/mínus, líbí/nelíbí se a tak dále. Existuje několik možných řešení, ale za určitých podmínek mohou poskytnout nesprávný výsledek.

Důrazně doporučuji přečíst a používat řazení jako v How Not To Sort By Average Rating

Ukázkový kód (můžete jej snadno přizpůsobit svým potřebám):

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. Laravel 5 Eloquent HasManyThrough - názvy sloupců v odkazech

  2. Dynamická minimální hodnota pro konkrétní rozsah (mysql)

  3. Jak seskupit podle části řetězce v MySQL

  4. Jak programově nastavit název tabulky v PL/SQL?