Maison > base de données > tutoriel mysql > le corps du texte

Quelle est l'utilisation du cas MySQL lorsque

coldplay.xixi
Libérer: 2020-10-12 13:58:56
original
5593 Les gens l'ont consulté

L'utilisation de mysql case when est : 1. Utilisée comme une simple recherche, la syntaxe est [CASE [col_name] WHEN [value1]] 2. Utilisée comme fonction de recherche, la syntaxe est [CASE WHEN] ; [expr] ALORS [ résultat1]].

Quelle est l'utilisation du cas MySQL lorsque

[Recommandations d'apprentissage associées : tutoriel mysql(vidéo)]

L'utilisation de mysql case when is :

Il existe deux syntaxes pour case when

Fonction simple

CASE [col_name] WHEN [value1] THEN [result1]…ELSE [default] END
Copier après la connexion
Copier après la connexion

Fonction de recherche

CASE WHEN [expr] THEN [result1]…ELSE [default] END
Copier après la connexion
Copier après la connexion

Quelle est la différence entre ces deux syntaxes ?

1. Fonction simple

CASE [col_name] WHEN [value1] THEN [result1]…ELSE [default] END
Copier après la connexion
Copier après la connexion

Énumérer toutes les valeurs possibles de ce champ*

SELECT
    NAME '英雄',
    CASE NAME
        WHEN '德莱文' THEN
            '斧子'
        WHEN '德玛西亚-盖伦' THEN
            '大宝剑'
        WHEN '暗夜猎手-VN' THEN
            '弩'
        ELSE
            '无'
    END '装备'
FROM
    user_info;
复制代码
复制代码
SELECT
    NAME '英雄',
    CASE NAME
        WHEN '德莱文' THEN
            '斧子'
        WHEN '德玛西亚-盖伦' THEN
            '大宝剑'
        WHEN '暗夜猎手-VN' THEN
            '弩'
        ELSE
            '无'
    END '装备'
FROM
    user_info;
Copier après la connexion

2.

CASE WHEN [expr] THEN [result1]…ELSE [default] END
Copier après la connexion
Copier après la connexion

La fonction de recherche peut rédiger des jugements, et la fonction de recherche ne renverra que la première valeur qui remplit les conditions, et les autres cas sont ignorés

# when 表达式中可以使用 and 连接条件
SELECT
    NAME '英雄',
    age '年龄',
    CASE
        WHEN age < 18 THEN
            &#39;少年&#39;
        WHEN age < 30 THEN
            &#39;青年&#39;
        WHEN age >= 30
        AND age < 50 THEN
            &#39;中年&#39;
        ELSE
            &#39;老年&#39;
    END &#39;状态&#39;
FROM
    user_info;
Copier après la connexion
聚合函数 sum 配合 case when 的简单函数实现行转列
SELECT
    st.stu_id &#39;学号&#39;,
    st.stu_name &#39;姓名&#39;,
    sum(
        CASE co.course_name
        WHEN &#39;大学语文&#39; THEN
            sc.scores
        ELSE
            0
        END
    ) &#39;大学语文&#39;,
    sum(
        CASE co.course_name
        WHEN &#39;新视野英语&#39; THEN
            sc.scores
        ELSE
            0
        END
    ) &#39;新视野英语&#39;,
    sum(
        CASE co.course_name
        WHEN &#39;离散数学&#39; THEN
            sc.scores
        ELSE
            0
        END
    ) &#39;离散数学&#39;,
    sum(
        CASE co.course_name
        WHEN &#39;概率论与数理统计&#39; THEN
            sc.scores
        ELSE
            0
        END
    ) &#39;概率论与数理统计&#39;,
    sum(
        CASE co.course_name
        WHEN &#39;线性代数&#39; THEN
            sc.scores
        ELSE
            0
        END
    ) &#39;线性代数&#39;,
    sum(
        CASE co.course_name
        WHEN &#39;高等数学&#39; THEN
            sc.scores
        ELSE
            0
        END
    ) &#39;高等数学&#39;
FROM
    edu_student st
LEFT JOIN edu_score sc ON st.stu_id = sc.stu_id
LEFT JOIN edu_courses co ON co.course_no = sc.course_no
GROUP BY
    st.stu_id
ORDER BY
    NULL;
Copier après la connexion

Envie d'en savoir plus Pour apprendre la programmation, faites attention à la rubrique formation php !

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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!