我有一个表,我想逐行阅读以搜索特定的匹配。
以下是我的表和列的结果。 Pos_Scan
表示在销售点扫描的内容和数量
UniqueID INGREDINETID KITCHENITEMID QUANTITY POS_SCAN STATUS
1 510 0111 1 5 0
2 54491472 0111 1 2 0
3 6001069201906 6006749006031 1 0 0
4 54491472 6006749006031 1 5 0
这里记录的不仅仅是这些记录,我想要做的是能够循环遍历此表并拉出具有相同kitchenitemid
且具有pos_scan >= quantity
的行,这样就形成了一个完整的配方例如,第1行和第2行将是一个完整的配方,但第3行和第4行将不是一个配方,因为pos_scan
在uniqueid 3的ingredientid
为0
请帮帮我
谢谢
答案 0 :(得分:1)
如果我在评论中重建的需求建议接近正确,那么类似下面的内容就可以了:
SELECT
KitchenItemID,MIN(Satisfied),MAX(Satisfied)
FROM
(
SELECT
KitchenItemID,
CASE WHEN pos_scan >= Quantity THEN 1 ELSE 0 END as Satisfied
FROM
OriginalTableNotNamdInQuestion
) t
GROUP BY
KitchenItemID
HAVING
MIN(Satisfied) = MAX(Satisfied) --Change this to < to find incomplete "recipes"