mysql - 两个表的where子句中的count()
问题描述
我是 sql 新手。我有两张桌子。我想检查每个表的计数,然后我想在每个表的计数相等时选择计数。
这是我的查询;
$ratio = "SELECT count(*) AS ratio FROM live_agents,campaigns
WHERE live_agents.count(agent) = campaigns.count(id)";
注意:我知道 live_agents.count(agent) 和 campaign.count(id) 将不起作用。我写这行是为了清楚地了解我的情况。我想计算 live_agents 表中列代理的行数,并想计算活动表中列 id 的行数。
表live_agents
:
agent
------
admin
user
staff
表campaigns
:
id
----
1
2
预期输出:
count
-------
2
希望大家理解我的问题
解决方案
尝试这个
SELECT Min(Ratio) Count FROM
(
SELECT Count(*) AS Ratio FROM live_agents
UNION ALL
SELECT Count(*) AS Ratio FROM campaigns
)X
推荐阅读
- javascript - 如何保持:伪元素与父级水平滚动后
- r - dplyr group_by() 和 summarise() 在所选行之间的组内进行计算
- android - 如何在 RX 中进行顺序 API 调用
- spring - 如何将 Spnego 集成到 Spring WebFlux 安全性中
- java - 在使用 Java 动态 Web 项目时在 Maven-Shade 插件中定义 mainClass
- c - 仅在选择特定目标时才能在makefile中编译某些文件并在makefile中添加标志?
- python - 如何在opencv python中找到图像的相位谱
- android - 如何修复 webview 已从 react native 中删除,现在可以从 react-native-webview 安装和导入,而不是 react native
- junit - Pact.io,Junit - 如何使用不同标签测试多个消费者?
- python - 制作 n 个具有特定名称的列表