sql >> データベース >  >> RDS >> Mysql

SQL / MySQL:数量値を日付ごとに複数の行に分割

    MySQL 8.0にアップグレードする場合は、planning_start_dateまでのすべての日のリストを生成する再帰CTEを次に示します。 およびplanning_end_date 必要な1日量と一緒に:

    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`
    

    dbfiddleのデモ



    1. Webアプリケーション用のMySQLとPostgreSQL

    2. 動的注文方向

    3. mySqlで秒(またはミリ秒)をタイムスタンプ(または日付のように見える文字列)に変換するにはどうすればよいですか?

    4. Access2016のレポートウィザードを使用してグループ化されたレポートを作成する方法