Maison > base de données > tutoriel mysql > Quelle est la méthode d'utilisation de mysql sum ?

Quelle est la méthode d'utilisation de mysql sum ?

藏色散人
Libérer: 2023-02-14 09:42:57
original
2948 Les gens l'ont consulté

Méthode MySQL sum sum : 1. Implémentez une seule somme via "select sum(value) as value from table which user_id" ; 2. Résumez plusieurs conditions via des instructions imbriquées, avec une syntaxe telle que "(select sum(value ) from table où type = 6 et type_son = 1) comme xj0".

Quelle est la méthode d'utilisation de mysql sum ?

L'environnement d'exploitation de ce tutoriel : système Windows 10, MySQL version 5.7, ordinateur Dell G3.

Quelle est la méthode d'utilisation de mysql sum ?

MySQL SUM() Méthode de sommation conditionnelle et méthode de sommation multi-conditions

1.

select sum(value) as value from table where user_id = 1 and type = 6 and type_son = 2
Copier après la connexion

value est le champ à additionner.

as est suivi de sum et lui donne un nom après la sommation.

2. Somme multi-conditions des instructions imbriquées dans les instructions SQL.

select 
 
(select sum(value) from table where type = 6 and type_son = 1) as xj0,
 
(select sum(value) from table where type = 6 and type_son = 2) as xj1,
 
(select sum(value) from table where type = 3 and type_son = 3) as xj2,
 
(select sum(value) from table where type = 4 and type_son = 3) as xj3
 
from table where user_id = 1 limit 0,1
Copier après la connexion

as est suivi de sum et donnez-lui un nom après la sommation afin qu'il n'y ait pas de conflits.

3. Identique au second, mais au lieu de résumer par des instructions d'imbrication, utilisez sum pour juger la somme.

select 
 
sum(IF(type = 6 and type_son = 1,value,NULL)) as xj0,
 
sum(IF(type = 6 and type_son = 2,value,NULL)) as xj1,
 
sum(IF(type = 3 and type_son = 0,value,NULL)) as xj2,
 
sum(IF(type = 4 and type_son = 3,value,NULL)) as xj3
 
from table where user_id = 1
 
 
sum(IF('条件判断','求和的字段','NULL不计算'))  as  '别名'
Copier après la connexion

Je pense que la troisième voie est meilleure que les deux premières.

YII 2.0 utilise SUM pour trouver la somme

$v['alls_bonus'] = AccountingLog::find()
        ->select(["
            sum( IF(type = 6 and type_son = 1,value,NULL) ) as xj0,
            sum( IF(type = 6 and type_son = 4,value,NULL) ) as xj1,
            sum( IF(type = 8 and type_son = 4,value,NULL) ) as xj2, 
            sum( IF(type = 3 and type_son = 1,value,NULL) ) as xj3
        "])
        ->where(['user_id'=>1])
        ->asArray()
        ->one();
Copier après la connexion

Attention à ajouter ["sum..."] dans select, sinon une erreur sera signalée

Apprentissage recommandé : "Tutoriel vidéo MySQL"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal