mysql 查詢 某一年 每個月的數據


 

 

 

SELECT
    dateTable.date,
    IFNULL( paygameTable.money, '0' ) AS money ,
    IFNULL( rechargeTable.rechargeMoney, '0' ) AS recharge_money
FROM
    (
        SELECT
            DATE_FORMAT( CONCAT(y.`FIRST`, '-', x.d, '-01'), '%Y-%m' ) AS date
        FROM
            (
                SELECT
                    1 AS d 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 UNION ALL
                SELECT
                    10 UNION ALL
                SELECT
                    11 UNION ALL
                SELECT
                    12
            ) x,
            ( SELECT '2019' AS FIRST ) y 

    ) AS dateTable

    LEFT JOIN (

        SELECT TRUNCATE
            ( sum( paygame.money ), 2 ) AS money,
            DATE_FORMAT( paygame.add_time, '%Y-%m' ) AS paytime
        FROM
            sys_paygames paygame
        WHERE
            DATE_FORMAT( paygame.add_time, '%Y' ) = '2019' 
        GROUP BY
            paytime 

    ) AS paygameTable 

    ON dateTable.date = paygameTable.paytime
    
    LEFT JOIN (

        SELECT TRUNCATE
            ( sum( cost.card_amount ), 2 ) AS rechargeMoney,
            DATE_FORMAT( cost.add_time, '%Y-%m' ) AS costtime 
        FROM
            sys_card_cost cost
        WHERE
            DATE_FORMAT( cost.add_time, '%Y' ) = '2019' 
        GROUP BY
            costtime 

    ) AS rechargeTable
    
        ON dateTable.date = rechargeTable.costtime
        
        ORDER BY date asc

 

 

 

 

 

 

 

 

 

 

 

 

1


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM