Maison > base de données > tutoriel mysql > Comment puis-je remplir des colonnes conditionnelles dans MySQL à l'aide d'une instruction CASE ?

Comment puis-je remplir des colonnes conditionnelles dans MySQL à l'aide d'une instruction CASE ?

DDD
Libérer: 2025-01-05 14:16:39
original
449 Les gens l'ont consulté

How Can I Populate Conditional Columns in MySQL Using a CASE Statement?

Remplir des colonnes conditionnelles à l'aide d'une instruction Case dans MySQL

Lorsque vous travaillez avec des tables de base de données, il devient souvent nécessaire de créer de nouvelles colonnes qui se remplissent dynamiquement données basées sur des conditions spécifiques. MySQL fournit l'instruction CASE, qui permet aux utilisateurs d'évaluer et d'attribuer des valeurs aux colonnes de manière conditionnelle.

Considérez un scénario dans lequel une table appelée « tbl_transaction » existe avec des colonnes pour l'ID de transaction, le type d'action (dépense ou revenu), l'en-tête , et le montant. L'objectif est de générer deux colonnes supplémentaires : Income Amt et Expense Amt, qui doivent être renseignées avec les montants appropriés en fonction du type de transaction.

Pour y parvenir à l'aide d'une requête SQL, l'instruction CASE peut être utilisée :

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;
Copier après la connexion

Cette requête évalue la colonne action_type pour chaque transaction et, en fonction de sa valeur, attribue le montant correspondant à la colonne Montant des revenus ou Montant des dépenses. Lorsque l'action est Revenu, le montant_action est affecté au Montant du revenu, tandis que pour les Dépenses, il est affecté au Montant des dépenses. Pour les actions qui ne sont ni des revenus ni des dépenses, NULL est attribué aux deux colonnes.

En conséquence, la requête produit une table de sortie avec les colonnes souhaitées, où chaque ligne contient l'ID de transaction, l'en-tête et le montant du revenu ( le cas échéant) et le montant des dépenses (le cas échéant). Cela permet une analyse et une catégorisation faciles des transactions en fonction de leurs types.

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!

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