我不确定我的标题问题是否有意义。但我有以下查询。
SELECT mdn,
cost_center,
sum(data_allowance) AS allowance,
sum(mib) AS 'sum_usage',
rate_plan
FROM verizon
GROUP by cost_center
HAVING SUM(mib) > SUM(data_allowance);
这给了我超过他们津贴的数据。这是我想要的信息,但每个成本中心都有多条线路。虽然每一行都可能没有结束,但我仍然希望SELECT
这些行。另一方面,有些线路可能超出了他们的限额,但总的来说,他们没有超过他们的补贴,我不想显示这些信息。
希望这是明确的,并提前感谢你。
答案 0 :(得分:2)
您是否正在尝试获取与成本中心相关的详细信息?如果是,请使用join
:
SELECT v.*
FROM verizon v JOIN
(SELECT cost_center
FROM verizon
GROUP BY cost_center
HAVING SUM(mib) > SUM(data_allowance)
) vsum
ON v.cost_center = vsum.cost_center;
如果您还想要汇总值,可以在vsum
子查询中包含该值并选择汇总值。