Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana menemukan nomor seri tanpa celah di mysql?

Memiliki lebih banyak permainan:-

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 untuk itu di sini:-

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. json_encode tidak mengembalikan apa pun

  2. Bagaimana cara menulis Kriteria Hibernasi untuk Query sql ini?

  3. Bagaimana cara menguji apakah Ci berhasil memasukkan data

  4. Perlu mendapatkan catatan dari database MySQL berdasarkan tanggal hanya dari bidang datetime

  5. Kesalahan koneksi SSL saat menghubungkan ke RDS MySQL dari Django