当前位置: 首页 > 面试题库 >

来自MySQL中多个表的COUNT(*)

蓟捷
2023-03-14
问题内容

如何从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


 类似资料:
  • 问题内容: 我想添加代表其他表计数的列。 我有3张桌子。 留言内容 主题 星星_吉文 我要结束于: Topic_Review 因此,基本上我想在3列中附加唯一值的计数(每个主题中给定的星数,在主题中具有消息的唯一用户以及每个主题中的唯一消息数)。 我希望最终也能够过滤类别(在两列中均可见)。 此外,我最终希望按加入的人数进行排序。例如,我将要有一个按钮,该按钮按升序按“星数”排序,或按降序按“用户

  • 我对以下查询有问题: 这个想法是把包括邮资在内的订单总价拿回来。 已订购的项目-包括所有已订购的项目(因此可以有多行) 订单-包括订单的邮资价格(这里每个订单只有一行) 我遇到的问题是,如果订单中包含多个“ordered_items”项目,则上述金额会多次计算“orders”中的邮资。 如何重写此查询,使邮资只计算一次? 提前感谢任何帮助。

  • 问题内容: 我想知道是否有一种方法可以完全在sql中执行此操作: 注意: q1将返回约3万行。 有什么办法可以在直式sql中完成上述操作?要直接从一个表(基本上是原始数据表)中提取数据并插入到另一个表(基本上是已处理数据表)中? 问题答案:

  • 我正在构建一个数据库的模式。我有下面两张表。。。 我想创建一个名为hasTool的表,它使用外键约束具有两个表的主键。然而,除此之外,我还想使这两个字段都成为新表hasTool的复合键。我尝试了以下方法,但似乎没有产生预期的行为: 我想允许表允许多个实例的userID或工具ID,但不是两者,并表用户和工具上的现有值。 提前谢谢!

  • 我只需要一个简单的查询, 下面是我的桌子: Information->id_info,year,information_name,person_name,country_id,state_id,city_id country->id,country_id,country_name state->id,state_id,country_id,state_name city->id,city_id,s

  • 问题内容: 我正在使用php和mysql。我有一个表,其中id列设置为自动递增作为主键。我正在尝试添加另一个名为sort_order的列。插入行后,sort_order列应自动递增。然后,用户将能够更改sort_order值。但是mysql不允许多于一列的自动递增? 自动递增sort_order值的最佳方法是什么? 受欢迎的要求,更多的解释。 在管理区域中,用户将具有类别列表。用户可以使用java