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

时间:2017-05-22 06:22:36

标签: php mysql

我有以下mysql表

ID     ref
1      AOO
2      BGH
3      AOO

我的查询是

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

现在我

ID   ref
1    AOO
2    BGH

是否可以在ref旁边创建另一个列,例如'notes',如果有多个项目,则“查看更多”

ID   ref   notes
1    AOO   view more
2    BGH   

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

您可以使用CASE表达式检查每个参考代码的计数,如果有多个代码,则显示'view more'。请注意,我从查询中省略了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