【问题标题】:good way to store tags in relational database when there are variable numbers of tags associated with each piece of information当与每条信息相关联的标签数量可变时,将标签存储在关系数据库中的好方法
【发布时间】:2013-07-12 16:33:22
【问题描述】:

我想在 SQL 关系数据库中存储可以用可变数量的标签标记的句子。所以,我可能有一个句子如

'As the sun sets slowly in the west, we bid you a fine farewell.'

带有以下标签:

'farewell', 'goodbye', 'amiable'

一个句子的标签数量可以变化。在此处给出的示例中,共有三个标签。

在关系数据库中组织此类信息的明智方法是什么?什么表等是合理的?

谢谢!

【问题讨论】:

标签: sql database tags relational varying


【解决方案1】:

你有一个多对多的关系。制作三个表:sentencetagsentence_tagsentencetag 表将各有一个主键 id 字段,sentence_tag 将有一个 sentence_id 字段和一个 tag_id 字段。要查找带有id = $sID 的句子的标签,

SELECT tag_name FROM tags WHERE id IN (SELECT tag_id FROM sentence_tag WHERE sentence_id = $sID);

【讨论】:

  • 优秀。非常感谢您的帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多