MySql在一个选择中加入2个计数

时间:2013-10-18 19:33:54

标签: mysql

我有2个工作查询,我想加入一个并生成4列,如下所示。有人可以帮忙吗?我认为联盟可以工作,但它似乎将Volume Loaded和Volume Useable添加到同一列中。

Supplier | SCP | Volume Loaded | Volume Useable
===============================================

查询1:

SELECT sd.dataprovider AS Supplier, LEFT(sd.SourceCodePrefix, 2) AS SCP, COUNT(*) AS `Volume Loaded` FROM sourcedescription sd
JOIN customerafterimport cai
ON cai.`SourceCode` = sd.`SourceCodePrefix`
JOIN importcustomerpack icp
ON icp.`Id` = cai.`ImportPackId`
GROUP BY LEFT(sd.SourceCodePrefix, 2)

查询2:

SELECT sd.dataprovider AS Supplier, LEFT(sd.SourceCodePrefix, 2) AS SCP,  COUNT(*) AS `Volume Useable` FROM sourcedescription sd
JOIN customerafterimport cai
ON cai.`SourceCode` = sd.`SourceCodePrefix`
JOIN importcustomerpack icp
ON icp.`Id` = cai.`ImportPackId`
WHERE isRemovedValidate IS NULL
AND IsRemovedSuppress IS NULL 
AND IsRemovedDeDup IS NULL
AND IsRemovedCleanse IS NULL 
AND IsRemovedPostcodeCleanse IS NULL 
AND IsRemovedSuppressTPS IS NULL
AND IsRemovedCleanseProfanity IS NULL
GROUP BY LEFT(sd.SourceCodePrefix, 2)

1 个答案:

答案 0 :(得分:0)

SELECT q1.Supplier, q1.SCP, `Volume Loaded`, `Volume Useable`
  FROM ( query 1 ) as q1
  JOIN ( query 2 ) as q2
    ON q1.Supplier = q2.Supplier AND q1.SCP = q2.SCP