SELECT lQ.[QUANTITY], lQ.[FORM_FACTOR_ID], oQ.[INDIVIDUAL_PACKAGING]
FROM [dbo].[AOF_ORDER_LINE_QUEUE] as lQ
LEFT JOIN [dbo].[AOF_ORDER_QUEUE] AS oQ
ON lQ.[SALES_ORDER_NUMBER] = oQ.[SALES_ORDER_NUMBER]
我可以看到我自己用我最熟悉的语言很容易地完成这个循环。基于一些初步研究,在SQL中循环似乎不是一件好事,所以我正在寻求建议。
我需要输出一个总值,它是
lQ.[QUANTITY]
. 条件是如果
oQ.[FORM_FACTOR_ID]
lQ。[数量]
等于2,则如果
oQ.[INDIVIDUAL_PACKAGING]
则查询中该特定行的输出等于
. 如果该值为false,则查询中该特定行的输出除以2。最终输出需要是单个整数。
QUANTITY FORM_FACTOR_ID INDIVIDUAL_PACKAGING
4 2 1
5 1 1
我需要一个为上表输出值7的查询。
QUANTITY FORM_FACTOR_ID INDIVIDUAL_PACKAGING
4 2 0
5 2 0
同样的查询需要为上表输出5。