0


SQL中CASE的用法

    在SQL中,CASE语句是一种条件表达式,用于根据条件执行不同的操作。它有两种形式:简单CASE表达式和搜索CASE表达式。

    简单CASE表达式的语法如下:
CASE expression
    WHEN value1 THEN result1
    WHEN value2 THEN result2
    ...
    ELSE result
END
    其中,expression是要比较的值或表达式,value1、value2等是与expression进行比较的可能值,result1、result2等是与对应value匹配时返回的结果,ELSE部分是当expression与所有value都不匹配时返回的结果。

    举个例子,假设有一个名为gender的字段,值为'M'、'F'或其他值,我们想要根据gender的值返回不同的结果:
SELECT
    gender,
    CASE gender
        WHEN 'M' THEN 'Male'
        WHEN 'F' THEN 'Female'
        ELSE 'Unknown'
    END AS gender_description
FROM
    employees;
    搜索CASE表达式的语法如下:
CASE
    WHEN condition1 THEN result1
    WHEN condition2 THEN result2
    ...
    ELSE result
END
    其中,condition1、condition2等是要判断的条件,result1、result2等是与对应condition匹配时返回的结果,ELSE部分是当所有condition都不匹配时返回的结果。

    举个例子,假设有一个名为salary的字段,我们想要根据salary的值返回不同的等级:
SELECT
    salary,
    CASE
        WHEN salary >= 10000 THEN 'High'
        WHEN salary >= 5000 THEN 'Medium'
        ELSE 'Low'
    END AS salary_level
FROM
    employees;
    这样就可以根据不同的条件返回不同的结果。CASE语句在SQL中非常有用,可以用于条件判断、数据转换和结果分类等场景。

注意:在SQL中,CASE语句按顺序评估每个条件,并返回第一个满足条件的结果。如果有多个条件都满足,只会执行第一个满足条件的结果。

    所以使用 case 可以避免同一条数据因为处理前后分别满足了不同的条件,从而导致一条数据被多次处理的情况。
标签: sql 数据库

本文转载自: https://blog.csdn.net/qq_57182209/article/details/132791919
版权归原作者 可以睡到中午吗 所有, 如有侵权,请联系我们删除。

“SQL中CASE的用法”的评论:

还没有评论