mysql - 按列分组返回具有相同值的两行

标签 mysql database phpmyadmin

我有一个 MySQL 数据库(应该按字母顺序排列),其中包含英语名词及其相应的类别,如食物、动物等。我运行以下查询,以便可以从每个类别中获取一个;

SELECT english, word, category FROM dict GROUP BY category

我得到的结果如下;

Query Result

现在这让我抓狂,但是当我按类别分组时,为什么会出现动物、形状、文具等类别的重复?

请帮帮我。

其他信息:当我运行此查询时;

SELECT COUNT(*) FROM dict WHERE category = 'Animals'

它返回值 1,但正如您从图像中看到的,它应该返回多个值。为什么两个看起来完全相同的单词“动物”被认为是不同的?

最佳答案

感谢@KIKO 软件。在某些类别中似乎存在某种看不见的特征。使用 TRIM 功能修复了它。

UPDATE dict SET category = TRIM(category)

关于mysql - 按列分组返回具有相同值的两行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42885598/

相关文章:

mysql - 合并表并按升序获取输出

MYSQL外键到同一个表?

php - 数据库驱动的 Web 应用程序的最佳解决方案?

ios - 计算数据库表中的字符串数量

java - 无法在 ip 地址上连接 phpmyadmin 说 "67.3.234.45" hibernate

mysql - 如何在 SQL 中删除重复(两行的混合)行?

MySQL - 多个 2 列,在同一个表中更新

ruby-on-rails - Rails 中的多列主键

mysql - 如何从 MySQL 数据库扫描并导出所有电子邮件地址

mysql - select * from table1, table2 其中 table1.id = 1 显示具有其他 id 的值