如何在 MySQL 中显示查询的行数?
Posted
技术标签:
【中文标题】如何在 MySQL 中显示查询的行数?【英文标题】:How to display row counts for queries in MySQL? 【发布时间】:2014-01-30 18:17:39 【问题描述】:有趣的问题,因为与我拥有的其他内容相比,查询似乎很简单,而且我知道答案,但不知道如何将其显示为一个视图。
所以我有两张桌子
表 A uid 名 姓氏
表 B uid 名 姓氏
我对 uid 进行了内部连接,以显示这两个表共享的记录数,并且我可以看到行但无法在视图中输出行数。只是想看看:
在两者中 - 4500
不在表 B - 13000
数字是所描述的两个查询中的每一个的唯一 uid 的数量(它们在每个表中已经是唯一的)。
【问题讨论】:
内连接不能告诉你有多少不匹配的记录,因为内连接只会返回两个表中都存在的记录。 @MarcB - 我不能将 A 中的总行数减去唯一匹配项吗? 我认为 Marc 的线索是“INNER joins can't tell you...” 【参考方案1】:第一个是
SELECT count(a.uid)
FROM a inner join b on a.uid = b.uid
第二个是
SELECT count(b.uid)
FROM a left join b on a.uid = b.uid
WHERE b.uid IS NULL
【讨论】:
当第二个查询应该是 A 减去第一个查询中的总行数时,我得到零 - 这很有效。另外如何在同一视图中显示两者?以上是关于如何在 MySQL 中显示查询的行数?的主要内容,如果未能解决你的问题,请参考以下文章