Mysql
 sql >> Base de données >  >> RDS >> Mysql

Erreur Mysql :#1247 - Référence 'karma' non prise en charge (référence à la fonction de groupe)

Le problème est là :

`ORDER BY karma...

Vous ne pouvez pas trier par quelque chose qui est défini comme un alias. Essayez ceci :

`ORDER BY ((SUM(votes.karma_up) - SUM(votes.karma_down)) - 1) / POW((TIMESTAMPDIFF(HOUR, links.created, NOW()) + 2), 1.5) DESC`

Espérons que la base de données puisse comprendre qu'elle ne l'évaluera pas deux fois. Si ce n'est pas le cas, utilisez d'abord une sélection interne sans trier par pour créer l'alias, puis utilisez une autre sélection pour trier.