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

テーブルを使用せずに2つの日付の間のすべての日付を選択します(日付のリストを生成します)

    クエリは次のとおりです:
    このクエリは、両方のデータベースで適切な結果を提供します:MariaDBMySQL

    SELECT ADDDATE('2012-02-10', INTERVAL @i:[email protected]+1 DAY) AS DAY
    FROM (
    SELECT a.a
    FROM (SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) AS a
    CROSS JOIN (SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) AS b
    CROSS JOIN (SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) AS c
    ) a
    JOIN (SELECT @i := -1) r1
    WHERE 
    @i < DATEDIFF('2012-02-15', '2012-02-10')
    



    1. MySQLGroup_Concat繰り返し値

    2. ストアドプロシージャのSqlParameterでDateTimeを使用すると、フォーマットエラーが発生します

    3. Connector / C ++ MySQLエラーコード:2014、SQLState:HY000およびコマンドの同期エラーはなぜですか?

    4. パイプで区切られた文字列を列に解析しますか?