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

SQL/MySQL:membagi nilai kuantitas menjadi beberapa baris berdasarkan tanggal

Jika Anda memutuskan untuk meningkatkan ke MySQL 8.0, berikut adalah CTE rekursif yang akan menghasilkan daftar semua hari antara planning_start_date dan planning_end_date bersama dengan jumlah harian yang dibutuhkan:

WITH RECURSIVE cte AS (
    SELECT planning_start_date AS date, 
           planning_end_date, 
           quantity / (DATEDIFF(planning_end_date, planning_start_date) + 1) AS daily_qty
    FROM test
    UNION ALL
    SELECT date + INTERVAL 1 DAY, planning_end_date, daily_qty
    FROM cte
    WHERE date < planning_end_date
)
SELECT `date`, daily_qty
FROM cte
ORDER BY `date`

Demo di dbfiddle



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Laravel / Fasih:WhereHas bersarang

  2. Bagaimana cara menampilkan baris tabel mysql sebagai kolom?

  3. Bagaimana cara menggunakan kueri mysqli menggunakan file connection.php terpisah?

  4. Parameter '@myLeft' harus ditentukan

  5. Masalah Database Laravel Homestead Vagrant Box