【发布时间】:2012-02-04 16:55:55
【问题描述】:
您好,我在一次 MYSQL 搜索中遇到了一个大问题。 我的数据库表如下所示:
+------+----------+------+
| id | keywords | file |
+------+----------+------+
在关键字中,每个条目都有许多关键字,用逗号分隔。 (关键字 1,关键字 2...)。
在 PHP 数组中列出了一些关键字 (5-10)。 我的搜索必须从这些关键字中获得至少 3 个的所有数据库条目。 它不需要得到所有这些词!但它不能工作,只有一个。
有人可以帮我解决这个问题吗?我不知道怎么做。
【问题讨论】:
-
那么,您正在搜索的 OTHER 表结构是什么样的……或者是这个 IT,而您只是使用一个字符串进行比较。如果是这样,关键字上下文设计不佳。
-
没有其他表。我必须在字段中搜索:关键字。
-
@Svetlio:表结构是您的选择吗?您是如何使用逗号分隔值列的?如果您了解normalization 以及在关系表中存储逗号分隔值的问题,那就太好了:Is storing a comma separated list in a database column really that bad?
-
@ypercube 优秀链接