【发布时间】:2013-02-06 16:22:22
【问题描述】:
我有一个名为 cakes 的表,其中包含以下列:id、title、description、keywords。我还有一个名为keywords 的表,其中cakes 是父表。关键字表包含两列:id 和关键字
我需要两个查询:已更新
如果一个人输入巧克力、榛子、草莓等成分(可以是用逗号分隔的任何内容),我需要该查询来搜索包含所有三个关键字的蛋糕并显示结果。仅显示包含所有三个的蛋糕。如果没有蛋糕匹配,我需要一条消息说没有找到。
我在搜索框上有一个标签,上面写着“查找类似蛋糕”。如果有人输入 Vanilla Raspberry 或 example,则查询需要在数据库中找到蛋糕并将其关键字与其他蛋糕的关键字匹配并显示结果。仅显示具有相同关键字的蛋糕。
不确定如何编写这些查询。任何帮助表示赞赏。谢谢!
【问题讨论】:
-
如果它们相似,你会怎么做?你能以表格形式给出样本记录吗?还有你想要的结果。
-
“关键字”是一个由分隔字符串组成的长文本字段吗?你有能力改变这个架构吗?
-
Matthew- 用逗号分隔的长文本字段。示例:坚果、花生酱、巧克力我真的不想更改架构 - 我有几个搜索查询效果很好,但没有一个显示基于关键字匹配的结果
-
更改架构。或者不要为此使用 RDBMS。这可能看起来很苛刻,但实际上就是这么简单。