【发布时间】:2011-12-19 09:12:34
【问题描述】:
我正在尝试创建一个小型 Web 应用程序来分类某些类型的 YouTube 视频,当用户提交视频时,他们会选择该视频所属的类别 他们会用现成的标签标记它,例如:
视频一 - 类别:广告 - 标签:可爱,有趣,里面有动物。
我正在尝试为此绘制我的数据库(我正在使用 MySQL),到目前为止我有两个想法。
想法 1:
带有ID 和Category 列的表格视频,另一个带有ID 和Tag 列的表格标签,而Videos.ID 和Tags.ID 链接在一起。所以当用户试图通过标签过滤搜索结果时,查询将有更多的条件(AND Tag = 'something' AND Tag = 'other thing')。
想法 2:
一张表 Videos 有Category 和Tags 列,标签存储为逗号分隔的字符串,当用户尝试按标签过滤搜索结果时,查询将更多条件(AND Tags LIKE '%something%' AND Tags LIKE '% other thing%)。
所以问题是:有没有更好的方法?我已经认为第一个很浪费(每个视频可能有多达 40 个现成的标签),第二个很笨拙。如果没有,你觉得哪个更好?
【问题讨论】: