Je suis actuellement à la recherche d'une base de données de notation dans SQLite 3.8.7.1 (Debian Jessie) et j'ai quelques difficultés à obtenir les agrégats que je veux à partir d'une seule requête pour retourner à une application web. Dragage à travers mes souvenirs de classes SQL à uni et beaucoup de documentation, j'ai une requête qui trouve la note totale, plus les nombres positifs et négatifs pour chaque élément étant évalué, mais je ne suis pas convaincu que j'ai a eu une façon sensée de le faire, ou que ça va être particulièrement efficace.Puis-je éliminer les sous-requêtes lors du calcul de plusieurs agrégats dans SQLite?
Les os nus sont sur sqlfiddle.com
comme http://www.sqlfiddle.com/#!7/a71acb/1
Essentiellement, j'ai une clé d'élément, puis le nom d'utilisateur de la personne sa notation, un champ linguistique actuellement fixé à NULL
dans tous les cas, la date de la notation et soit 1
ou -1
dans le champ de valeur. Je veux retourner un tableau de tous les articles, avec des colonnes pour le nombre de notes positives, le nombre de notes négatives et la note globale (positif moins négatif). Puis-je supprimer les sous-requêtes d'une manière ou d'une autre ou les rendre plus efficaces?
Y a-t-il des approches alternatives que je peux poursuivre dans SQLite?
En fait, ma requête renvoie un nombre négatif pour les évaluations négatives totales; Puis-je rendre cela positif?