簡體   English   中英

如何將兩個不同的表與兩個不同的groupby相加

[英]How to sum of two different table with two different groupby

我有兩個表叫workstuff兩個表具有相同的字段- companyqualityquantity

我需要所有的總和quantity與工作組由companyquality ,並加入表所有的總和quantity與組的東西, companyquality

我沒有得到預期的結果。 SQLfiddel http://sqlfiddle.com/#!9/eea577/6

工作查詢

select st.company,st.quality,st.quantitys - ct.quantitys as balance from
(select company,quality,sum(quantity) as quantitys from stuff
 group by quality,company) as st join (select company,quality,
 sum(quantity) as quantitys from work group by quality,company)
 as ct on `ct`.`company` = `st`.`company` and ct.quality = st.quality group by quality,company

你錯過了連接中的質量條件

請嘗試以下操作:

SELECT tableA.ID, tableA.`Year`, tableA.`Month`,  
       tableA.`Type`, tableA.instrument, 
       tableA.totalAmount, tableB.totalInstrument
FROM
(
    SELECT  a.ID, a.`Year`, a.`Month`, 
            b.`Type`, b.instrument, 
            SUM(b.`amount`) totalAmount
    FROM    `date` a
                INNER JOIN `transactions` b
                    ON a.ID = b.id
    GROUP BY b.`Type
) tableA
INNER JOIN
(
    SELECT  a.ID, a.`Year`, a.`Month`, 
            b.`Type`, b.instrument, 
            SUM(b.`instrument`) totalInstrument
    FROM    `date` a
                INNER JOIN `transactions` b
                    ON a.ID = b.id
    GROUP BY a.`Year`, a.`Month`
) tableB ON tableA.ID = tableB.ID AND
            tableA.`Year` = tableB.`Year` AND
            tableA.`Month` = tableB.`Month`

暫無
暫無

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

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