[ad_1]
やあ、
注文番号を含むデータセットと、それらの注文のすべての商品を含むデータセットがあります。 それらの項目の中には、上記のものは単なる訂正請求であるというコメントも含まれています。 そのようなコメントを含む注文全体を除外する必要があります。 問題は、私が書いたコードはコメントを除外しているだけですが、項目はそのまま残り、値を示していることです。 この注文内の商品のいずれかに特定のキーワードが含まれている場合、注文全体を除外するにはどうすればよいですか?
例:
注文番号データベース:
ドキュメントネット番号
1111111
この順序のアイテム
ドキュメント番号 | 項目名 | LineTotalValue
1111111 | シャンプー 200ml | £9999
1111111 | 間違った請求書が送信されました。 | £0
私が試したこと:
以下のコードはコメントのある項目を除外しますが、キーワードのない項目により DocumentNo が完全に除外されません。
これまでの私のコード:
SELECT 'US' AS Region, T1.CustomerDocumentNo, T1.SOPOrderReturnID, T1.DocumentNo, T2.LineTotalValue, T2.LineQuantity, T2.SOPOrderReturnLineID, T1.DocumentDate, T1.RequestedDeliveryDate, T1.PromisedDeliveryDate, TotalNetValue AS OrderNetValue, TotalGrossValue AS OrderGrossValue, TotalTaxValue AS OrderTaxValue, T1.DocumentDueDate, T1.DateTimeCreated, T4.Name, T3.CustomerAccountName, T3.SLCustomerAccountID, T2.ItemCode, T2.ItemDescription, T5.StockItemTypeName, T6.SOPOrderReturnTypeName, T7.ItemName FROM SOPOrderReturn AS T1 JOIN SOPOrderReturnLine AS T2 ON T1.SOPOrderReturnID=T2.SOPOrderReturnID JOIN SLCustomerAccount AS T3 ON T1.CustomerID=T3.SLCustomerAccountID JOIN DocumentStatus AS T4 ON T1.DocumentStatusID=T4.DocumentStatusID JOIN StockItemType AS T5 ON T2.StockItemTypeID=T5.StockItemTypeID JOIN SOPOrderReturnType AS T6 ON T6.SOPOrderReturnTypeID=T1.DocumentTypeID LEFT JOIN SOPInvoiceCreditLine AS T7 ON T7.SOPOrderReturnLineID=T2.SOPOrderReturnLineID WHERE DocumentNo NOT IN (SELECT ItemName FROM SOPInvoiceCreditLine WHERE ItemName LIKE'%Invoice%')
解決策 1
お返事をありがとうございます。 私は自分で解決策を見つけることができました(ChatGPTの「少し」の助けを借りて)
他の人のためにここに投稿します。
したがって、次のようになります。
WHERE T1.DocumentNo NOT IN ( SELECT DISTINCT T8.DocumentNo FROM SOPOrderReturn AS T8 JOIN SOPOrderReturnLine AS T9 ON T8.SOPOrderReturnID = T9.SOPOrderReturnID JOIN SOPInvoiceCreditLine AS T10 ON T10.SOPOrderReturnLineID = T9.SOPOrderReturnLineID WHERE T10.ItemName LIKE '%invoice%' OR T10.ItemName LIKE '%Credit%')
解決策 2
[ad_2]
コメント