如何从 MySQL 的多个表中选择 COUNT(*)?
如:
SELECT COUNT(*) AS table1Count FROM table1 WHERE someCondition
JOIN??
SELECT COUNT(*) AS table2Count FROM table2 WHERE someCondition
CROSS JOIN? subqueries?
SELECT COUNT(*) AS table3Count FROM table3 WHERE someCondition
编辑:
目标是返回这个:
+-------------+-------------+-------------+
| table1Count | table2Count | table3Count |
+-------------+-------------+-------------+
| 14 | 27 | 0 |
+-------------+-------------+-------------+
最佳答案
您可以通过使用子查询来做到这一点,每个 tableCount 一个子查询:
SELECT
(SELECT COUNT(*) FROM table1 WHERE someCondition) as table1Count,
(SELECT COUNT(*) FROM table2 WHERE someCondition) as table2Count,
(SELECT COUNT(*) FROM table3 WHERE someCondition) as table3Count
关于mysql - 来自 MySQL 中多个表的 COUNT(*),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3761240/