2

3つのプロセスで実行され、3つのテーブルにログオンするIDを取得するための内部結合ステートメントがあります。

Select  a.InquiryAccount ,a.InquiryAmount,a.InquiryCustName,a.InquiryLang, b.PayAmountPaid,b.PayScreenText,b.PayReceiptText, c.RevRefNo
from
    inquiry a
        inner join
    Payment b
        on a.InquiryAccount = b.PayAccount
        inner join 
    Reversal c
        on a.InquiryAccount = c.RevAccount

order by c.RevRefNo desc

そして、それは私が望むような結果をもたらしますが、2倍または複製された値があり、内部結合の結果で複製したアカウントを追跡したいと考えています。

私は私の内部結合でこのようなことをしようとしています:

SELECT *
FROM Inquiry
WHERE InquiryAccount IN (
 SELECT InquiryAccount
 FROM Inquiry
 GROUP BY InquiryAccount 
 HAVING (COUNT(InquiryAccount ) > 1)
) 

重複する唯一のアカウントを表示します。しかし、試してみるとエラーが発生しますが、オンにすることはできgroup byますか? または、ステートメントで重複した値が見つかった場合の解決策はありますか?Inner Joingroup byinner joininner join

これが私の内部結合ステートメントの結果です:

InquiryAccount  InquiryAmount   InquiryLang
    10176601              124070    0
    12344556              160050    1
    10445654              160050    1
    23456789              160050    1
    22456666              160050    1
    45324681              160050    1
    14356890              160050    1
    44566666              160050    1
    22456666              160050    1
    10176601              160050    1

これは、重複したアカウントのみを取得する内部結合ステートメントから生成したいサンプルです。

InquiryAccount  InquiryAmount   InquiryLang
10176601              124070    0
10176601              160050    1
22456666              160050    1
22456666              160050    1
4

1 に答える 1