Maison >base de données >tutoriel mysql >Comment les instructions MySQL CASE peuvent-elles remplir les colonnes de manière conditionnelle ?

Comment les instructions MySQL CASE peuvent-elles remplir les colonnes de manière conditionnelle ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-25 10:12:13244parcourir

How Can MySQL CASE Statements Populate Columns Conditionally?

Utilisation d'instructions de cas pour le remplissage conditionnel des colonnes dans MySQL

Avec l'obligation de remplir conditionnellement deux colonnes (« Montant des revenus » et « Montant des dépenses » ') dans la table 'tbl_transaction', une instruction case s'avère être une solution efficace dans MySQL.

L'instruction case vous permet d'évaluer une expression et de renvoyer une valeur différente selon qu'une condition est remplie ou non. Dans ce cas, la colonne action_type est utilisée comme condition pour déterminer si un montant doit être attribué à la colonne Montant des revenus ou Montant des dépenses.

Voici une requête qui démontre l'utilisation d'une instruction de cas pour atteindre l'objectif souhaité. résultat :

SELECT
    id,
    action_heading,
    CASE
        WHEN action_type = 'Income' THEN action_amount
        ELSE NULL
    END AS income_amt,
    CASE
        WHEN action_type = 'Expense' THEN action_amount
        ELSE NULL
    END AS expense_amt
FROM tbl_transaction;

Dans cette requête, l'instruction CASE est utilisée deux fois, une fois pour attribuer le montant de l'action à la colonne revenue_amt si le type d'action est "Revenu", et une fois pour attribuer le montant de l'action à la colonne dépense_amt si le type d'action est "Dépense".

Le résultat de cette requête serait le suivant :

id action_heading income_amt expense_amt
1 ABC 1000 NULL
2 XYZ NULL 2000

Cela montre comment une instruction case peut remplir dynamiquement des colonnes en fonction d'expressions conditionnelles, offrant ainsi un moyen pratique de catégoriser et d'organiser efficacement les données.

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!

Déclaration:
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