MySQL:COUNT 太高,因为表中有多个条目

标签 mysql sql select count

我得到了这样的声明:

SELECT COUNT( epoa.eclass ) AS counts, epoa.eclass, map.eclass_description
FROM `db2`.`articles` epoa,
`db1`.`ECLASS_UNSPSC` map

where epoa.eclass = map.eclass 

GROUP BY epoa.eclass
ORDER BY counts DESC

解释:映射 (ECLASS_UNSPSC) 具有 eclass(编号)的描述。有时有不止一个描述,所以我有一个不正确的计数。我怎样才能得到一个描述而不是多个?这样我的计数是正确的?

最佳答案

COUNT() 聚合函数就是这样做的:计数。它不会对您认为是重复的内容做出任何假设。

如果您想要epoa.eclassunique 值的数量,请将其替换为:

COUNT( DISTINCT epoa.eclass ) AS counts

关于MySQL:COUNT 太高,因为表中有多个条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19406961/

相关文章:

php - mysql 上的日期始终为 1970

sql - 为什么 count(case date) 也计算空情况?

sql - 搜索数据库

mysql - SQL如何选择本周内其id在右表中出现次数少于5次的左表?

html - 更改 <select> 元素中所选选项的文本颜色

mysql - 从理论上讲,此 SQL 查询是否太大而无法在负载下快速提供服务?

MYSQL 连接两个表并比较两列

MySQL 选择子项的所有信息

Mysql 用一个 select 短语连接多个表

sql - Informix:选择空问题