我在表A中定义了产品代码,其中我将列出3个具有数量的产品。如果客户购买这3件物品,我将免费提供1件产品。
对于这些项目,我将提供"项目D"免费。
如何编写查询以检查当前表中是否所有3个项目都可用?
答案 0 :(得分:0)
很遗憾,您没有向我们提供足够的信息以便继续为您提供帮助。从你说的这就是我的想法。你有一个这样的表:
您需要一个选项来检查当前表中是否所有3个项目都可用:
SELECT COUNT(PRODUCT_CODE)= 3时的情况
'YOU GET FREE ITEM D' ELSE 'YOU DONT GET ANYTHING' END AS ANSWER
FROM TABLE_A
WHERE (PRODUCT_CODE = PRODUCT_CODE_1 AND QUANTITY> 0)
OR (PRODUCT_CODE = PRODUCT_CODE_2 AND QUANTITY> 0)
OR (PRODUCT_CODE = PRODUCT_CODE_3 AND QUANTITY> 0)
所以基本上where子句检查这3个项是否存在且数量是否大于零。然后我写了一个Case语句(如果你愿意,你可以使用解码)检查计数是否为3然后给我我的免费项目,否则不要给我。