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

कैसे mysql में अंतराल के बिना सीरियल नंबर खोजने के लिए?

एक और नाटक था:-

SELECT MIN(aFirstSerial), MAX(aLastSerial)
FROM
(
    SELECT @FirstSerial:=IF(productSerialnumber = @LastSerial + 1, IF(@FirstSerial = 0, productSerialnumber, @FirstSerial), productSerialnumber) AS aFirstSerial, 
        @RangeNum:=IF(productSerialnumber = @LastSerial + 1, @RangeNum, @RangeNum + 1) AS aRangeNum, 
        @LastSerial := productSerialnumber AS aLastSerial
    FROM
    (
        SELECT productSerialnumber
        FROM Product
        ORDER BY productSerialnumber
    ) Sub1
    CROSS JOIN (SELECT @PrevSerial:=0, @RangeNum:=0, @FirstSerial:=0, @LastSerial:=0) Sub2
) Sub3
GROUP BY aRangeNum

इसके लिए SQL Fiddle यहाँ:-

http://sqlfiddle.com/#!2/5cbc2/12



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मैं mysql में एकाधिक मान कैसे सम्मिलित करूं और डुप्लिकेट से कैसे बचूं?

  2. गतिशील अनुमति बाधाओं को कैसे संहिताबद्ध और संग्रहीत करें?

  3. अरबी वर्ण ??????? php और mysql . पर

  4. PHP में दिनांक स्वरूप परिवर्तित करना

  5. mysqli में ऑटो-इन्क्रीमेंट के रूप में आईडी के साथ डेटा डालने का उचित तरीका