案例 MySQL

CASE WHEN in MySQL

我有一组一对一的映射 A -> apple、B-> Banana 等等。我的 table 有一列的值为 A、B、C..

现在我正在尝试使用 select 语句,它将给我直接的结果

SELECT T1.job, T1.pid, T2.T2MAX, T1.message, T1.duration, T1.T1SUM ,'message' As message ,
CASE WHEN  T1.T1SUM = 0 THEN 'yellow' WHEN  T1.T1SUM > 0 THEN 'green'   ELSE NULL END  AS color  
       FROM(SELECT monitor.statcatcher.job,monitor.statcatcher.pid, MIN(monitor.statcatcher.moment)AS T1MIN, monitor.statcatcher.message,monitor.statcatcher.duration,
     SUM(Coalesce(monitor.flowmetercatcher.count, 0)) AS T1SUM
           FROM monitor.statcatcher
           LEFT JOIN monitor.flowmetercatcher ON monitor.statcatcher.pid = monitor.flowmetercatcher.pid AND DATE(monitor.statcatcher.moment) =
     DATE(monitor.flowmetercatcher.moment)
           WHERE DATE(monitor.statcatcher.moment) = CURRENT_DATE AND message IS NOT NULL 
           GROUP BY monitor.statcatcher.job,monitor.statcatcher.pid, monitor.statcatcher.message, monitor.statcatcher.duration)AS T1
         INNER JOIN(SELECT monitor.statcatcher.job,MAX(monitor.statcatcher.moment) AS T2MAX,
     monitor.statcatcher.pid
         FROM monitor.statcatcher
         WHERE DATE(monitor.statcatcher.moment) = CURRENT_DATE
         GROUP BY monitor.statcatcher.job) AS T2
         ON T1.job = T2.job AND T1.pid = T2.pid