【发布时间】:2016-12-13 12:27:24
【问题描述】:
我在显示我的数据库中的唯一值时遇到了一些麻烦。 例如,我有这个非常简单的测试表:
您可以在其中看到标签列上有一个重复值,名为 intro。
我想回显所有的UNIQUE 标签,我已经尝试使用DISTINCT 命令,但我可能做错了什么。
这是我的实际查询:
SELECT DISTINCT tags FROM blog
但这给了我所有的标签。
任何帮助将不胜感激,谢谢。
【问题讨论】:
-
修复您的数据结构,这样您就不会将标签存储在逗号分隔的列表中。相反,请使用每个
blogId和tag一行的表格。 -
^ 我正想说点什么。
-
同意,也 - 我假设这是
mysql,如果是这样的话,你能用适当的 DBMS 标记这个问题吗?除了重新设计blog表之外,它可能有助于为您当前的问题找到解决方案。 -
那里的那些空间也很重要。您最好按照@GordonLinoff 的建议重新开始。
-
另外,这里已经有一个相当有用的问题/答案。请参阅:stackoverflow.com/questions/19073500/… 讨论
SUBSTRING_INDEX()函数并将逗号分隔的列表拆分为查询中的单独行。