0
votes

Somme deux colonnes générées

dise que j'ai une table comme xxx pré>

où la pièce tipe a code> et tipe b code> sont générées. J'aimerais créer une colonne tipe c code> qui sera la somme de tige A code> et tipe b code>. P>

SELECT
c.id AS 'ID',
SUM(CASE
    WHEN code = 0 THEN 1
    ELSE 0
END) 'TIPE A',
SUM(CASE
    WHEN mt.tipe LIKE '%tipe_b%' THEN 1
    ELSE 0
END) AS 'TIPE B'
FROM 
[...]


1 commentaires

Qu'entendez-vous par «colonnes générées»?


3 Réponses :


1
votes

Vous pouvez faire un moyen simple xxx


0 commentaires

0
votes

Je peux voir deux façons de faire cela:

à l'aide de sous-requêtes xxx

ou créez une nouvelle colonne avec la logique combinée pour "tige a" et 'Tipe b' xxx

en fonction de la complexité de votre requête d'une manière ou d'une autre peut correspondre mieux.


0 commentaires

0
votes

Dans MySQL, vous pouvez simplifier considérablement les expressions. Mais vous devez les répéter:

SELECT c.id AS ID, SUM(code = 0) as tipe_a, SUM(mt.tipe LIKE '%tipe_b%') as tipe_b,
        SUM( (code = 0) OR mt.tipe LIKE '%tipe_b%')) as tipe_a_or_b,
        SUM(code = 0) + SUM(mt.tipe LIKE '%tipe_b%') as sum_either
FROM t;


0 commentaires