首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

用tag作为分类的有关问题

2012-02-04 
用tag作为分类的问题。在设计论坛数据库的时候,一个帖子可能被赋予1个以上的tag。。我应该怎么设计数据库?帖

用tag作为分类的问题。
在设计论坛数据库的时候,一个帖子可能被赋予1个以上的tag。。
我应该怎么设计数据库?
帖子前的tag是应该   1个tag占一个列还是   N个tag放在一个列?

第一种
tag1   |   tag2   |……|   tagN   |   title         |
科技   |   教育   |……|   文化   |   这是主题   |

第二种

            tag                    |   title
科技,教育,……,文化     |   这是主题

这两种用哪一种?那种的搜索速度快?

[解决办法]
N个tag放在一个列
[解决办法]
感觉如果类型不是太多 ,第一中好点,
[解决办法]
都放在同一个列,之间用分隔符就行了
[解决办法]
用第二种吧
select * from table where tag like '%科技% '
[解决办法]
假如说有一个帖子的tag是“科技,教育,体育,娱乐,文化”
你想查询 教育 和 娱乐 的帖子, 可以 tag like '%教育%娱乐% ',
如果另外一个帖子的tag是“娱乐,教育,体育,文化” 当顺序变的时候就差不出来了,会很麻烦,而且当数据量打的时候 like 会很慢
感觉一种tag作为一列,可以用0或1 表示,查询的时候很方便,就是如果tag有很多种 表会很长


热点排行