[英]Get column based on line level items using GROUP BY - MYSQL
上下文:对于上表,我想在组级别创建一个带有 order_no 和 Manufacture 列的视图“VIEW_A”。
where Manufacture = A if line level items have `manf` = A or "".
where Manufacture = B if line level items have `manf` = B
where Manufacture = Mixed if line level items have `manf` A and B.
How can I solve the issue?
您可以计算订单项“A”和订单项“B”,然后将这些数字与每个订单的订单项总数进行比较:
SELECT order_no,
CASE WHEN sum(CASE WHEN `manf` = 'A' THEN 1 END) = count(*) THEN 'A'
WHEN sum(CASE WHEN `manf` = 'B' THEN 1 END) = count(*) THEN 'B'
ELSE 'Mixed' END Manufacture
FROM mytable
GROUP BY order_no;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.