我有一个查询,使用 union 语句输出 5-6 个不同的计数。有没有办法为每个行添加行标签?

问题描述 投票:0回答:1

代码片段看起来像这样

(select count)
union
(select count)
union
(select count)
union
(select count)
union
(select count)

输出为: 数数

291
3563
44
1
246
8123.

有没有办法添加行标签?例如,我希望最终输出为:

Col1.                    Col2.

'Current Revenue'        291

'Current Sales'          3563

等等。有没有最快/最干净的方法来做到这一点?

谢谢!

我尝试使用 CTE 进行操作。

sql mysql
1个回答
0
投票

您可以向每个查询添加字符串文字。

旁注:由于您想要删除重复项(并且使用这些标签,想必不应该有重复项),您可以使用

union all
而不是
union
以获得稍微更好的性能:

SELECT 'Current Revenue', COUNT(*)
FROM   revenue
WHERE  ....
UNION ALL
SELECT 'Current Sales', COUNT(*)
FROM   sales
WHERE  ...
-- And so on
© www.soinside.com 2019 - 2024. All rights reserved.