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

SQL सर्वर 2005 - समूहीकरण मान, केवल परिवर्तन प्रदर्शित करें

मैं date_loaded के आधार पर अनुक्रमिक पंक्ति संख्या शामिल करने के लिए एक सामान्य तालिका अभिव्यक्ति का उपयोग करता हूं, और उसके बाद इसे स्वयं-जुड़ने में उपयोग करता हूं:

CREATE TABLE #temp (
    value INT,
    date_loaded DATETIME
)

INSERT INTO #temp VALUES (1,'2012-03-7')
INSERT INTO #temp VALUES (1,'2012-03-6')
INSERT INTO #temp VALUES (1,'2012-03-5')
INSERT INTO #temp VALUES (3,'2012-03-4')
INSERT INTO #temp VALUES (4,'2012-03-3')
INSERT INTO #temp VALUES (1,'2012-03-2')

;WITH cte AS (SELECT ROW_NUMBER() OVER (ORDER BY date_loaded) AS n, value, date_loaded FROM #temp)
SELECT t2.value, t2.date_loaded
FROM cte t2 LEFT JOIN cte t1 ON t2.n = t1.n + 1
WHERE t2.value <> ISNULL(t1.value, -1)

DROP TABLE #temp



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. विंडोज़ प्रमाणीकरण या एसक्यूएल प्रमाणीकरण के साथ स्थानीयहोस्ट \ SQLEXPRESS तक पहुंचने के लिए मुझे किस एसक्यूएल कनेक्शन स्ट्रिंग का उपयोग करने की आवश्यकता है?

  2. फ़िल्टर की गई अनुक्रमणिका स्थिति को अनुकूलक द्वारा अनदेखा किया जाता है

  3. SQL पैरामीटर का उपयोग करके SQL LIKE कथन में विशेष वर्णों से बचना

  4. किसी भिन्न SQL सर्वर पर किसी भिन्न डेटाबेस में तालिका की प्रतिलिपि बनाएँ

  5. आउटपुट क्लॉज पर फ़िल्टर करें sql