Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

गतिविधि तिथि के आधार पर ClaimStatus =1 के साथ दावों को कैसे समाप्त करें। एसक्यूएल सर्वर 2012

एसक्यूएल डेमो

WITH cte as (
    SELECT ClaimNumber, 
           ClaimStatus,
           ROW_NUMBER() over (PARTITION BY ClaimNumber ORDER BY ActivityDate DESC) as rn
    FROM @TempTable
)
SELECT t.*
FROM @TempTable t
JOIN (SELECT *
      FROM cte
      WHERE rn = 1) f
  ON t.ClaimNumber = f.ClaimNumber
 AND f.ClaimStatus = 0

आउटपुट

इसके अतिरिक्त यदि केवल 2 स्थिति आप भी कर सकते हैं

WITH cte as (
    SELECT ClaimNumber
    FROM @TempTable
    GROUP BY ClaimNumber
    HAVING MAX(ClaimStatus) = 0
)
SELECT t.*
FROM @TempTable t
WHERE ClaimNumber IN (SELECT * FROM cte)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. सी # एसक्यूएल सर्वर 2008 में एसएमओ के लिए संदर्भ कोड चाहिए

  2. SQL सर्वर पर संग्रहीत कार्यविधियों की सामग्री को क्वेरी करें

  3. मैं एक फ़ंक्शन बनाए बिना SQL सर्वर में एक सीमांकित स्ट्रिंग को कैसे विभाजित करूं?

  4. MERGE के साथ अंकगणित अतिप्रवाह त्रुटि (संख्यात्मक से संख्यात्मक):SQL सर्वर बग?

  5. SQL सर्वर 2008 में कुल टेबलस्पेस उपयोग कैसे प्राप्त करें?