COUNT(*)从MySQL中的多个表 [英] COUNT(*) from multiple tables in MySQL
本文介绍了COUNT(*)从MySQL中的多个表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何从MySQL的多个表格中选择COUNT(*)?
如:
SELECT COUNT(*)AS table1Count FROM table1 WHERE someCondition
JOIN ??
SELECT COUNT(*)AS table2Count FROM table2 WHERE someCondition
CROSS JOIN?子查询?
SELECT COUNT(*)AS table3Count FROM table3 WHERE someCondition
/ strong>
目标是返回:
------------- + ------------- + ------------- +
| table1Count | table2Count | table3Count |
+ ------------- + ------------- + ------------- +
| 14 | 27 | 0 |
+ ------------- + ------------- + ------------- + $ b $你可以使用子查询,每个tableCount一个子查询来完成它:b $
SELECT
(SELECT COUNT(*)FROM table1 WHERE someCondition)as table1Count,
(*)FROM table2 WHERE someCondition)as table2Count,
(SELECT COUNT(*)FROM table3 WHERE someCondition)as table3Count
How do I go about selecting COUNT(*)s from multiple tables in MySQL?
Such as:
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
Edit:
The goal is to return this:
+-------------+-------------+-------------+
| table1Count | table2Count | table3Count |
+-------------+-------------+-------------+
| 14 | 27 | 0 |
+-------------+-------------+-------------+
解决方案 You can do it by using subqueries, one subquery for each 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
这篇关于COUNT(*)从MySQL中的多个表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文