dbo.MatchDate (@ दिनांक)
: एक इनलाइन TVF जो dbo से परिणाम देता है मरीजों
तालिका। इनलाइन टीवीएफ ये कॉलम लौटाता है: रोआई आईडी
और percentmatch
।
मेरे पास अभी तक यह क्वेरी है:
<कोड> # Temp2 (RowNumber, ValFromFunc, FuncWeight, प्रतिशत) में डालने dbo.MatchDate (@date) से RowNumber, d.PercentMatch, @constVal, d.PercentMatch * @constVal चयन घ भीतरी dbo.Patients में शामिल होने के P पर d.RowNumber = p.RowId आंतरिक शामिल dbo.Results rs पर rsRowId = d.RowNumber जहां p.ModifiedAt & gt; RsmodifiedAt
मुझे ModifiedAt
dbo.MatchDate (@date)
फ़ंक्शन द्वारा dbo.Patients
तालिका ModifiedAt ResultsStored
तालिका में RowId के
एक ही रूप में dbo द्वारा दिया साथ कोड> से अधिक है। MatchDate (@date)
। के बाद से dbo.MatchDate (@date)
केवल RowId
और PercentMatch
देता है, प्राप्त करने के लिए ModifiedAt
उन पंक्तियों की, मैं रोगी
तालिका रोआईड
कॉलम में शामिल हो गए। तब तुलना के लिए, प्राप्त करने के लिए ModifiedAt
से ResultsStored
तालिका, मैं इसे आगे dbo.ResultsStored
पर साथ शामिल हो गए RowId
कॉलम केवल।
समस्या: इसका परिणाम दोहराई गई पंक्तियों में डाला गया है। न केवल मुझे dbo.MatchDate (@date)
से भी पंक्तियाँ मिल रही हैं, लेकिन इससे भी dbo.ResultsStored
तालिका जो बिल्कुल नहीं था dbo.ResultsStored
केवल ModifiedAt
को वही पंक्ति आईडी
के लिए मान की जांच करने के लिए था।
मैं क्वेरी से ऊपर कैसे संशोधित कर सकता हूं dbo.ResultsStored
तालिका के कारण # Temp2
में पंक्तियों के इस दोहराव से बचें?
मुझे लगता है कि आप आप क्या चाहते हैं की जाँच करने के लिए मौजूद है
का उपयोग कर सकते हैं:
# Temp2 में डालने (RowNumber, ValFromFunc, FuncWeight, प्रतिशत) RowNumber, d.PercentMatch, @constVal, d.PercentMatch * @constVal चयन dbo.MatchDate (@date) के रूप में घ जहां (dbo.Patients से चयन मौजूद है 1 के रूप में पी अंदरूनी rs.RowId रुपये के रूप में dbo.ResultsStored शामिल हों = घ .RowNumber WHERE (d.RowNumber = p.RowId) और (p.ModifiedAt & gt; rsModifiedAt))
यह # Temp2
में दर्ज होगा केवल रिकॉर्ड TVF
से, बशर्ते कि कम से कम एक रिकॉर्ड उसी रोआईड
से, dbo.Patients
से < कोड> ModifiedAt सह> संशोधितअट
से अधिक dbo.ResultsStored
।
No comments:
Post a Comment