簡體   English   中英

計算 2 個子查詢,然后按日期分組 - mysql

[英]Compute 2 subqueries then group by date - mysql

我有這張桌子

附圖片

我想先做子查詢,然后將它們按日期分組

預期結果應該是這樣的:

隨附的

正在運行此查詢

(
SELECT DATE_FORMAT(dd1.modified_datetime,'%Y-%m-%d') as date, (v1+v2) as value FROM
    (SELECT modified_datetime, Sum(data->"$.amount") as v1
        FROM transactions
        GROUP BY modified_datetime) as dd1 ,            
    (SELECT modified_datetime, MAX(data->"$.amount") as v2
        FROM transactions
        GROUP BY modified_datetime) as dd2

    GROUP BY dd1.modified_datetime, value
)

並得到這個結果

隨附的

感謝您的幫助

在子查詢和每個下一個查詢之間使用JOIN

(SELECT modified_datetime, Sum(data->"$.amount") as v1
    FROM transactions
    GROUP BY modified_datetime) as dd1 JOIN
(SELECT modified_datetime, MAX(data->"$.amount") as v2
    FROM transactions
    GROUP BY modified_datetime) as dd2 ON dd1.modified_datetime=dd2.modified_datetime

如果我正確地跟隨你,你可以使用union all和聚合:

select date_format(dt, '%Y-%m-%d') dt_day, sum(amount) value
from (
    select modified_datetime dt, data ->> '$.amount' amount from transactions
    union all 
    select created_datetime, data ->> '$.amount' from transactions
) t
group by dt_day
order by dt_day

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM