我有一个手表在线商店。它有一个搜索过滤器。过滤的一个标准是手表的材质。它有很多独特的价值。例如:“钢”,“有金的钢”,“有镀金的钢”。麻烦在逻辑与mysql
我试图通过创建一个SQL LIKE请求过滤手表与钢身体,金身体过滤手表。但是,当搜索带有金色机身的手表时,它也给了我带有镀金的钢质手表,因为它包含“黄金”一词。
你能提出一个很好的解决方案来解决这个问题吗?
到目前为止,我试过这条SQL语句:
SELECT * FROM `watches` WHERE `material` LIKE "%gold%"
你可以请张贴你的代码吗?你试过什么了? – Barranka 2013-03-11 22:35:25
使用sphinx_search,创建一个名为filters的表。将所有功能/过滤器插入此表中,并将其映射到各自的watch_id。索引这张表,你现在拥有所有的控制权。如果我不清楚,谷歌sphinx_search,它解决了这一切 – beck03076 2013-03-11 22:41:19