SQL 函数:case when 的用法

case when 的用法就像是java的三元运算符:

# 46、查询各学生的年龄(按照出生日期来算,当前月日 < 出生年月的月日则,年龄减一)
SELECT
    s_birth,
    s_name,
    (
        DATE_FORMAT( NOW( ), '%Y' ) - DATE_FORMAT( s_birth, '%Y' ) - ( CASE WHEN DATE_FORMAT( NOW( ), '%m%d' ) > DATE_FORMAT( s_birth, '%m%d' ) THEN 0 ELSE 1 END ) 
    ) AS age 
FROM
    student;

 

 

原文地址:https://www.cnblogs.com/qq993411626------/p/13043377.html