3

各データベースの 2 つのテーブルの行数を数え、結果を結合したい 2 つの MySQL データベースがあります。

SELECT count(*) FROM base_1.users;
+----------+
| count(*) |
+----------+
|       15 |
+----------+
SELECT count(*) FROM base_2.users;
+----------+
| count(*) |
+----------+
|       75 |
+----------+

このクエリは、最初のカウントの結果を返します。

SELECT count(*) FROM base_1.users, base_2.users;
+----------+
| count(*) |
+----------+
|       15 |
+----------+

単一のクエリで作成できますか?

4

2 に答える 2

2

どうですか

SELECT SUM(c)
FROM 
(
   SELECT count(*) as c FROM base_1.users;
) x
UNION
(
   SELECT count(*) as c FROM base_2.users;
) y
于 2012-12-20T13:42:31.847 に答える
1

UNION ALL2 つのクエリの間にaを使用SUM()してから、合計を取得するために使用できます。

select sum(total) as TotalCount
from
(
  SELECT count(*) Total
  FROM base_1.users
  UNION ALL
  SELECT count(*) 
  FROM base_2.users
) src
于 2012-12-20T13:44:58.393 に答える