[英]SQL QUERY CASE WHEN EXISTS ADD MULTIPLE
我需要再添加一个子查询以检查下面的customertype列是查询如何添加到我的原始查询
CASE
WHEN EXISTS (
SELECT ItemCode
FROM ORIN
INNER JOIN RIN1 ON ORIN.DocEntry = RIN1.DocEntry
WHERE CardCode = X.CardCode
AND ItemCode = X.ItemCode
AND ORIN.DocDate < X.[Trans Date]
AND year(X.[Trans Date]) >= year(getdate()) - 4
)
THEN 'Existing'
ELSE 'OMP'
END )
以下是我的原始查询
SELECT
X.#
,(
CASE
WHEN EXISTS (
SELECT ItemCode
FROM OINV
INNER JOIN INV1 ON OINV.DocEntry = INV1.DocEntry
WHERE CardCode = X.CardCode
AND ItemCode = X.ItemCode
AND OINV.DocDate < X.[Trans Date]
AND year(X.[Trans Date]) >= year(getdate()) - 4
)
THEN 'Existing'
ELSE 'OMP'
END
) AS CustomerType
FROM InvoiceData X
我的目标是两个检查都存在于客户类型列中。 它基本上是两个 select 查询检查
如果我理解正确,我相信您可以使用AND
包含两个子查询。
SELECT
X.#
,(
CASE
WHEN
EXISTS
(
SELECT ItemCode
FROM OINV
INNER JOIN INV1 ON OINV.DocEntry = INV1.DocEntry
WHERE CardCode = X.CardCode
AND ItemCode = X.ItemCode
AND OINV.DocDate < X.[Trans Date]
AND year(X.[Trans Date]) >= year(getdate()) - 4
)
AND
EXISTS
(
SELECT ItemCode
FROM ORIN
INNER JOIN RIN1 ON ORIN.DocEntry = RIN1.DocEntry
WHERE CardCode = X.CardCode
AND ItemCode = X.ItemCode
AND ORIN.DocDate < X.[Trans Date]
AND year(X.[Trans Date]) >= year(getdate()) - 4
)
THEN 'Existing'
ELSE 'OMP'
END
) AS CustomerType
FROM InvoiceData X
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.