MySQL将两个SELECT查询与一个表上的大小写合并

MySQL将两个SELECT查询与一个表上的大小写合并,mysql,select,join,merge,union,Mysql,Select,Join,Merge,Union,我想将两个查询合并为一个完整查询。我需要两个查询在一个聚合字段(MFG)上分组。我假设您使用了一个连接,但它在同一个表上,并且带有大小写,因此我不确定这是如何工作的 第一次查询(2015年) 第二次查询(2014) 期望的结果 MFG | Cost2015 | Cost2014 MFG1 | 1500 | 0 MFG2 | 1000 | 1200 MFG3 | 0 | 3600 | 100 |

我想将两个查询合并为一个完整查询。我需要两个查询在一个聚合字段(MFG)上分组。我假设您使用了一个
连接
,但它在同一个表上,并且带有
大小写
,因此我不确定这是如何工作的

第一次查询(2015年)

第二次查询(2014)

期望的结果

MFG  |  Cost2015  |  Cost2014
MFG1 |   1500     |     0
MFG2 |   1000     |    1200
MFG3 |     0      |    3600
     |    100     |     15

您可以在
SUM()中使用
CASE


谢谢你,在我开始做的几件事中,它似乎起了作用,让我在接受之前再做一些测试。
SELECT 
    CASE
        WHEN ITEM LIKE '%1%' THEN 'MFG1'
        WHEN ITEM LIKE '%2%' THEN 'MFG2'
        WHEN ITEM LIKE '%3%' THEN 'MFG3'
        ELSE ''
    END AS MFG,
    SUM(COST) AS Cost2014
FROM
    table
WHERE
    TRANS_DATE BETWEEN '2014-12-01' AND '2014-12-31'
GROUP BY MFG
MFG  |  Cost2015  |  Cost2014
MFG1 |   1500     |     0
MFG2 |   1000     |    1200
MFG3 |     0      |    3600
     |    100     |     15
SELECT 
    CASE
        WHEN ITEM LIKE '%1%' THEN 'MFG1'
        WHEN ITEM LIKE '%2%' THEN 'MFG2'
        WHEN ITEM LIKE '%3%' THEN 'MFG3'
        ELSE ''
    END AS MFG,
    SUM(CASE WHEN TRANS_DATE BETWEEN '2014-12-01' AND '2014-12-31' THEN COST ELSE 0 END) AS Cost2014,
    SUM(CASE WHEN TRANS_DATE BETWEEN '2015-12-01' AND '2015-12-31' THEN COST ELSE 0 END) AS Cost2015
FROM
    TABLE
WHERE
    TRANS_DATE BETWEEN '2014-12-01' AND '2015-12-31'
GROUP BY MFG