数据库模型:将类似图像组合在一起

时间:2017-04-13 06:18:26

标签: mysql database database-design

我在mySQL中创建了一个存储很多东西的数据库,但是特别是图像。用于存储图像的表名是image,如下所示:

image (image_id, title, caption, filename, published_date, ...)

差不多2年了,我已经将近5000张图片上传到了表格中。

现在,我想添加一项新功能。我想对相似的图像进行分组,这样当我看到图像时,我也可以选择查看相似的图像。

我不确定我是否需要新表,还是应该使用相同的表或两者。关于它应该如何的任何想法/建议?

2 个答案:

答案 0 :(得分:2)

您应该创建另一个具有相似性的表。

为什么它不能是同一张桌子? You表中的一条记录可以有许多类似的记录(因此它会向该表添加许多列,或者对于每个相似性,在YOur表中会有另一行。所以唯一的逻辑选项是创建另一个表。

IdFromMainTable | IdOfSimiliarRecord

稍后您可以通过IdFromMainTable显示视图中的similiarites轻松加入该表。或者IdOfSimiliarRecord和IdFromMainTable。 [取决于你是想为类似的记录添加2条记录还是只为同类记录添加一条记录]

答案 1 :(得分:1)

听起来你想要做的就是为图像创建标签。有很多方法可以做到这一点,但是将标记添加到同一个表中会阻止大量的连接发生,并且可能会更快。您可以将标记存储为JSON(如果您使用MySQL => 7.5.8)。