我无法搞清楚这个SQL代码。
SQL查询应该返回唯一ID与其他项共享的“事物”的总和。
SQL查询需要检查唯一ID是否与其他项目和Brand共享相同的交付日期,如果它确实将所有项目的总项目作为摘要返回。因此,如果唯一的ID交付日期是2018-03-28并且品牌是索尼(但是我不知道它是什么品牌,我需要首先找到唯一ID),如果任何其他项目共享此信息,则返回其可用性整体。因此,如果5个项目共享相同的信息,并且每个项目都有2个可用性,则应返回10。
我正在使用mysql
SELECT SUM(COILS)WHERE SELECT MACHINE FROM ORDERS WHERE C_DD="2018-03-28" AND ID="491";
我期望SUM(可用性)显示与此案例交付日期和品牌中的唯一ID共享相同信息的商品的可用性总值。
问题已修复
SELECT SUM(AVAILABILITY) FROM ORDERS WHERE BRAND=(SELECT BRAND FROM ORDERS WHERE ID="491") AND C_DD="2018-03-28";
答案 0 :(得分:0)
虽然您说问题已修复,但您描述的逻辑可以使用以下方法更好地实现:
SELECT SUM(AVAILABILITY)
FROM ORDERS
WHERE (BRAND, C_DD) = (SELECT BRAND, C_DD FROM ORDERS WHERE ID = 491) ;
这假定C_DD
是交货日期。