首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过标签列表从标签列中准确选择标签?

如何通过标签列表从标签列中准确选择标签?
EN

Stack Overflow用户
提问于 2011-11-16 10:32:41
回答 2查看 89关注 0票数 0

如何使用标签列表从标签列中准确选择标签?

例如,下面是使用查询创建的表,但是我想缩小搜索范围,

代码语言:javascript
复制
page_id         tags
1               tile-1,tile-12,tile-10
2               tile-1,tile-10
3               tile-12,tile-10
4               tile-15,tile-16

我想要的结果是只包含tile-1的页面,

代码语言:javascript
复制
page_id         tags
1               tile-1,tile-12,tile-10
2               tile-1,tile-10

但是下面我正在处理的查询将返回所有这些参数,包括tile-12tile-10等。

代码语言:javascript
复制
SELECT*
FROM (...) AS k
WHERE k.tags LIKE '%tile-1%'

我可以不使用LIKE吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-11-16 11:06:07

我建议将模式更改为page_id,tag。因此,您的数据应该如下所示

代码语言:javascript
复制
1           tile-1
1           tile-12
1           tile-10
2           tile-1
2           tile-10
3           tile-12
3           tile-10
4           tile-15
4           tile-16

然后,您可以使用一个简单的查询来完成所有这些操作,

代码语言:javascript
复制
SELECT * FROM table WHERE tag = 'title-1';

通过这种方式,您不必搜索表(表扫描)-这将成为一个问题,一旦表有更多的行(可伸缩的解决方案)。其次,您可以在标记列上使用索引,以使搜索变得超级快速。

票数 1
EN

Stack Overflow用户

发布于 2011-11-16 10:35:59

由于您使用逗号作为分隔符,因此LIKE-statement必须包含逗号:

代码语言:javascript
复制
SELECT * FROM table WHERE tags LIKE '%title-1,%';
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8145936

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档