我有一个 MySql 表包含一个标题字段。
假设用户在输入文本框中输入术语。
现在我想选择标题字段具有以下状态之一的行:
1)其标题与术语完全相同:"sugar">>"sugar"
2)其标题中的一个词就像术语:"pretty flower" >> "rose flower"
3)它的标题来自与该术语相同的Word系列(术语是那些术语的根词):"biology" >> "biography, biodegradable, symbiotic"
我正在使用laravel。如果可以为此提出任何解决方案,那就太棒了
答案 0 :(得分:3)
这是一个简单的解决方案,直到你提到单词家庭......
然而,这仍然是可以实现的。它是关于你如何接近它的。
您将首先在MySQL中使用like
条件。
您可以在MySQL网站上阅读有关Pattern Matching
的更多相关信息以下是一个例子:
SELECT * FROM my_table WHERE field1 LIKE '%searchTerm%';
在通过" word family"获取结果方面,您可能需要考虑在结果中添加标签。
在表格中添加tags
字段,并添加与" word family"相关的标记数组。
您的查询将如下所示:
SELECT * FROM my_table WHERE field1 LIKE '%searchTerm%' OR field2 LIKE '%searchTerm%';
您需要遍历标记数组以查找匹配项(如果有的话)。
我的方法 开始使用 。
根据Laravel
,如何执$results = DB::table('table1')
->where('myfield', 'like', '%searchterm%')
->get();
我当然希望这会让你朝着正确的方向前进。