Search 允许通过标签进行搜索?

Search 允许通过标签进行搜索?,search,tags,Search,Tags,有一个HTML表单,用户通过它创建一个项目。使用常用的sql查询搜索项目。现在,将为HTML表单上的每个项目提供一个标记字段。因此,在创建项目时,用户将输入项目的标记名,项目将与标记名一起创建。然后,用户将使用此标记名搜索项目 实现这一点的最佳方式是什么?将标记列添加到每个Item表中是一种很好的方法吗?其他可能的选择是什么?我相信您会希望尽量减少到数据库服务器的往返。标记可能是感兴趣的项目之一的属性,并且是多对多关系。这条路走得很好,你可以找到更多信息 如果您希望能够添加多个标记,那么最好的方

有一个HTML表单,用户通过它创建一个项目。使用常用的sql查询搜索项目。现在,将为HTML表单上的每个项目提供一个标记字段。因此,在创建项目时,用户将输入项目的标记名,项目将与标记名一起创建。然后,用户将使用此标记名搜索项目


实现这一点的最佳方式是什么?将标记列添加到每个Item表中是一种很好的方法吗?其他可能的选择是什么?

我相信您会希望尽量减少到数据库服务器的往返。标记可能是感兴趣的项目之一的属性,并且是多对多关系。这条路走得很好,你可以找到更多信息

如果您希望能够添加多个标记,那么最好的方法是实现如下表:

 item_tag
      item_id - Integer
      tag_name - Varchar
或两张表格:

 item_tag
      item_id
      tag_id
 tags
      id
      name
使用
post_标签
表包含与哪个项目关联的标签列表。如果您想按标签搜索项目,那么可以执行以下操作:

 SELECT * FROM `items` LEFT JOIN `item_tag` ON `items`.`id` = `item_tag`.`item_id` WHERE `tag_name` = 'value'
讨论实施标签系统的最佳方式,建议使用三个表格;e、 例如,
项目
标签
项目_标签