对 SELECT 查询求和
Sum a SELECT query
我目前是 运行 这个 select 查询(比原来的更短):
SELECT 'website' service, COUNT(*)
FROM website
UNION
SELECT 'vps' service, COUNT(*)
FROM vps
UNION
SELECT 'other' service,
COUNT(*)
FROM other;
我得到这个结果:
Result
+---------+----------+
| service | COUNT(*) |
+---------+----------+
| website | 2 |
| vps | 1 |
| other | 2 |
+---------+----------+
3 rows in set (0.01 sec)
我想将 COUNT(*)
列中列出的所有结果相加。
预期结果:
+----------+
| COUNT(*) |
+----------+
| 5 |
+----------+
1 rows in set (0.00 sec)
我该怎么做?
谢谢!
根据评论,您应该在外部查询中添加 SUM
。
尝试:
SELECT sum(t1.nr_count)
FROM (
SELECT 'website' service, COUNT(*) as nr_count FROM website
UNION
SELECT 'vps' service, COUNT(*) as nr_count FROM vps
UNION
SELECT 'other' service, COUNT(*) as nr_count FROM other
) as t1;
我目前是 运行 这个 select 查询(比原来的更短):
SELECT 'website' service, COUNT(*)
FROM website
UNION
SELECT 'vps' service, COUNT(*)
FROM vps
UNION
SELECT 'other' service,
COUNT(*)
FROM other;
我得到这个结果:
Result
+---------+----------+
| service | COUNT(*) |
+---------+----------+
| website | 2 |
| vps | 1 |
| other | 2 |
+---------+----------+
3 rows in set (0.01 sec)
我想将 COUNT(*)
列中列出的所有结果相加。
预期结果:
+----------+
| COUNT(*) |
+----------+
| 5 |
+----------+
1 rows in set (0.00 sec)
我该怎么做?
谢谢!
根据评论,您应该在外部查询中添加 SUM
。
尝试:
SELECT sum(t1.nr_count)
FROM (
SELECT 'website' service, COUNT(*) as nr_count FROM website
UNION
SELECT 'vps' service, COUNT(*) as nr_count FROM vps
UNION
SELECT 'other' service, COUNT(*) as nr_count FROM other
) as t1;