php - 如果表有多个重复行,则在 mysql 中使用 group by 生成一个标志

标签 php mysql

我有以下 mysql 表

ID     ref
1      AOO
2      BGH
3      AOO

我的查询是

$getdup = "select * from coderef group by ref"

现在我明白了

ID   ref
1    AOO
2    BGH

如果有超过 1 项,是否可以在 ref 旁边创建另一列,例如“注释”,表示“查看更多”

ID   ref   notes
1    AOO   view more
2    BGH   

非常感谢任何帮助。

最佳答案

您可以使用CASE 表达式来检查每个引用代码的计数,并在存在多个代码时显示'查看更多'。请注意,我在查询中省略了 ID,因为不清楚您想要显示哪个 ID

SELECT
    ref,
    CASE WHEN COUNT(*) > 1 THEN 'view more' END AS notes
    -- MIN(ID) AS ID       you could include this
FROM coderef
GROUP BY ref

关于php - 如果表有多个重复行,则在 mysql 中使用 group by 生成一个标志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44105894/

相关文章:

php - Mysql 查询获取共同好友计数并将其显示在 php 的表中

php - 在 PHP 中将字符串解释为 HTML

mysql - 调试 SQL 查询

PHP Mysqli fetch_assoc

mysql - 使用格式化日期选择字段

mysql - 哪个 ruby​​ mysql 库支持准备语句和 last id 检索

php - ASCII 编码字符串的问题 - PHP

php - 如何删除 php 中的零除消息并改进我的代码?

php - 检查单选按钮是否被按下

javascript - 使用 ajax、mysql 和 php