有这样一个联盟:SQL - 过滤工会的结果
(SELECT prod.id, price, timestamp
FROM products prod JOIN prices price ON prod.id = price.productid
WHERE price > 0
GROUP BY prod.id, DATE(timestamp))
UNION
(SELECT prod.id, price, timestamp
FROM products prod JOIN prices price ON prod.id = price.productid
WHERE price = 0
GROUP BY prod.id, DATE(timestamp))
问题:
如果有日期,其中一个产品是可用的价格= 0和价格> 0,我们在联合结果中获得两行。
我们想要的是,如果同一日期的同一产品的价格> 0,那么价格= 0的结果将被忽略。
任何人都可以分享伎俩来解决这个问题吗?