select *
from
(select * from T where Action = 'SENT') s
left outer join
(select * from T where Action = 'RECEIVED') r
on r.Module and s.Module and r.User = s.User and r.Batch = s.Batch
नमूना डेटा की सीमित मात्रा से ऐसा प्रतीत होता है कि आप एक सामान्य module
का उपयोग करके विशिष्ट रूप से एक मिलान निर्धारित कर सकते हैं , user
और batch
. मुझे यकीन नहीं है कि आप अपने प्रश्नों में डुप्लिकेट के साथ क्यों आए। ऐसा लगता है कि एकमात्र अन्य समस्या "भेजने" को रखने के लिए बाहरी जुड़ाव का उपयोग कर रही है जिसमें अभी तक "प्राप्त" नहीं है।
मुझे लगता है कि आप अभी भी परिणाम में सब कुछ चाहते थे। यदि आप केवल अयुग्मित परिदृश्य चाहते हैं तो जोड़ें:
where r.Module is null