Py学习  »  Joakim Danielson  »  全部回复
回复总数  1
6 年前
回复了 Joakim Danielson 创建的主题 » mysql case不返回空值

您需要将case when移动到外部查询,因为在 sales_orders

SELECT  t1.id,
    t1.collection_date,
    COALESCE(t2.last_order_date, '0001-01-01') order_date,
    CASE COALESCE(t2.last_order_date, '0001-01-01') 
      WHEN '0001-01-01' THEN 'false' 
      ELSE 'true' 
    END flag
FROM job_details AS t1
LEFT JOIN
  (SELECT  job_id, MAX(date) AS last_order_date
   FROM sales_orders
   GROUP BY job_id
  ) AS t2
 ON t2.job_id = t1.id