Conditional column for query based on other columns in MySQL

前端 未结 2 1881
清歌不尽
清歌不尽 2020-12-28 20:20

I\'m pretty sure I\'ve seen this somewhere, but I can\'t find the right terminology so I\'m having trouble...

Let\'s say I have a table with user info (let\'s also a

相关标签:
2条回答
  • 2020-12-28 20:44
    select User_id
    ,case 
        when (YEAR(DOB) < 1980 AND Job_Title = "manager")   then 'Old Fart'
        when (YEAR(DOB) < 1980 AND Job_Title = "associate") then 'Old Timer'
        when (YEAR(DOB) > 1980 AND Job_Title = "manager")   then 'Eager Beaver'
        when (YEAR(DOB) > 1980 AND Job_Title = "associate") then 'Slacker'
        else 'nobody'
    end
    as Real_Title 
    from users
    
    0 讨论(0)
  • 2020-12-28 20:52

    If I understand correctly, I think you're looking for the CASE statement:

    SELECT User_id,
            (CASE
                WHEN YEAR(DOB) < 1980 AND Job_Title = "manager" THEN "Old Fart"
                WHEN YEAR(DOB) < 1980 AND Job_Title = "associate" THEN "Old Timer"
                ...
                ELSE "Unknown Title"
            END) AS Real_Title
    FROM users;
    
    0 讨论(0)
提交回复
热议问题