mysql - Comment écrire deux SUM avec des conditions différentes dans une instruction SQL et trouver la différence entre les deux
阿神
阿神 2017-05-24 11:33:10
0
1
784

Le tableau que j'utilise dans mon entreprise est le tableau du journal des points de l'utilisateur. Les champs sont l'identifiant de l'utilisateur, le type de point (ajouté à 1 et réduit à 2), les points, l'horodatage.
Je dois calculer le total des points de l'utilisateur chaque jour.
Je les ai d'abord divisés. Résumez les points positifs et négatifs, puis parcourez le tableau pour trouver la différence dans le programme back-end. C'est extrêmement inefficace. Je veux l'écrire dans une instruction SQL. ? Cas d'utilisation alors pour signaler une erreur

SUM(CASE type=1 THEN `score` ELSE 0-`score`)
阿神
阿神

闭关修行中......

répondre à tous(1)
洪涛

devrait être :

SUM(IF(type = 1, score, -score))

Ou écrivez plus verbeusement :

SUM(CASE WHEN type = 1 THEN score ELSE -score END)
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal