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

Cara mengelompokkan rentang berkelanjutan menggunakan MySQL

MySQL tidak mendukung fungsi analitik, tetapi Anda dapat meniru perilaku tersebut dengan pengguna- variabel yang ditentukan :

SELECT   CatID, Begin, MAX(Date) AS End, Rate
FROM (
  SELECT   my_table.*,
           @f:=CONVERT(
             IF(@c<=>CatId AND @r<=>Rate AND DATEDIFF(Date, @d)=1, @f, Date), DATE
           ) AS Begin,
           @c:=CatId, @d:=Date, @r:=Rate
  FROM     my_table JOIN (SELECT @c:=NULL) AS init
  ORDER BY CatId, Rate, Date
) AS t
GROUP BY CatID, Begin, Rate

Lihat di sqlfiddle .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara memonitor ruang MySQL?

  2. Cara Menyebarkan Database MySQL Chamilo untuk Ketersediaan Tinggi

  3. Injeksi SQL di Java dan MySQL saat menggunakan banyak kueri

  4. SQL:Dapatkan Produk dari suatu kategori tetapi juga harus dalam kumpulan kategori lain

  5. Menangani Karakter Khusus Teks Lengkap MySQL