【发布时间】:2020-07-23 09:24:47
【问题描述】:
我有三张桌子:
tblUnits [Unit_ID, Country]
tblEvents [Unit_ID, Month, Duration_Hrs]
tblMetrics [Unit_ID, Month, Service_Hrs]
并在其上构建了 3 个查询:
1.
SELECT Unit_ID
FROM tblUnits
WHERE City = 'NewYork'
有输出:
Unit_ID
1
2
3
SELECT
COUNT(IF(Event_Type in ('X', 'Y'), 1, NULL)) as Ev_Count,
SUM(CASE
WHEN Event_Type in ('X', 'Y') THEN Duration_Hrs
END) Duration
FROM tblEvents
WHERE
Design = 'GoodDesign'
AND Month = 'May'
AND Unit_ID in (1,2,3)
有输出:
Ev_Count | Duration
1 | 10
SELECT SUM(Service_Hrs) as SumSH
FROM tblMetrics
WHERE Month = 'May'
AND Unit_ID in (1,2,3)
有输出:
SumSH
100
现在我想结合这 3 个查询来获得如下输出:
Ev_Count | Duration | SumSH
1 | 10 | 100
我的带有两个左连接的查询将 tblEvents 和 tblMetrics 值相乘。
【问题讨论】:
-
你的MySql是什么版本的?
-
MySQL 服务器 5.6.34