【发布时间】:2021-03-24 21:44:22
【问题描述】:
我有以下 sql 和结果:
SELECT oh.order_id,disallow_short_ship,sm.number
FROM table1 oh
LEFT JOIN table2 sm
ON sm.client_id = oh.client_id
AND sm.site_id = oh.from_site_id
AND sm.order_id = oh.order_id
WHERE oh.order_id = 'abc'
GROUP BY oh.order_id,oh.disallow_short_ship,sm.number
ORDER BY oh.order_id desc;
结果:
order_id disallow_short_ship number
abc null 2107
abc null 2108
预期的结果是把case条件
如果订单的结果不止一个,那么
比较两个数字列,
更大的数字(2108)应该有disallow_short_ship = 'Y'
结果是少数 (2107) disallow_short_ship = 'N'。
我尝试为disallow_short_ship 列写case 语句,但我需要设置两个条件吗
在一个案例陈述中。
预期结果:
order_id disallow_short_ship number
abc N 2107
abc Y 2108
【问题讨论】: