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

मैं MySQL में एक सन्निहित समूह कैसे कर सकता हूँ?

उपयोग करें:

   SELECT MIN(t.id) 'mi', 
          t.val, 
          COUNT(*)
     FROM (SELECT x.id, 
                 x.val, 
                 CASE 
                   WHEN xt.val IS NULL OR xt.val != x.val THEN 
                     @rownum := @rownum+1 
                   ELSE 
                     @rownum 
                 END AS grp
            FROM TABLE x
            JOIN (SELECT @rownum := 0) r
       LEFT JOIN (SELECT t.id +1 'id',
                         t.val
                    FROM TABLE t) xt ON xt.id = x.id) t
 GROUP BY t.val, t.grp
 ORDER BY mi

यहाँ कुंजी एक कृत्रिम मूल्य बनाना था जो समूहीकरण की अनुमति देगा।

पहले, गुफ़ा के उत्तर को ठीक किया:

   SELECT t.id, t.val
     FROM TABLE t
LEFT JOIN TABLE t2 on t2.id + 1 = t.id
    WHERE t2.val IS NULL 
       OR t.val <> t2.val


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. DEFAULT क्लॉज में CURRENT_TIMESTAMP के साथ केवल एक TIMESTAMP कॉलम क्यों हो सकता है?

  2. विंडोज़ में बड़ी फ़ाइलों को आयात करने के लिए आप MySQL के स्रोत कमांड का उपयोग कैसे करते हैं?

  3. योग के आधार पर MySQL में दशमलव की गणना करें

  4. पुराने पासवर्ड के साथ प्रमाणीकरण अब समर्थित नहीं है, 4.1 स्टाइल पासवर्ड का उपयोग करें

  5. मूडल MySQL डेटाबेस के लिए स्वचालित विफलता को कैसे सेटअप करें