我有一个表,说tblName有字段和值

| ID  |     Name                 |

| 1   |     Technical University |

| 2   |     XYZ Lab Ltd.         |

现在我必须将Name列与以下输入值匹配:
1- tech univ
2- tech universities
3- xyz Labs

我无法编写查询以从表中获取结果。
如果我将Name列与输入值tech univ或tech universions匹配,那么query应该从tblName响应result set Technical University。
请建议。
提前谢谢。

最佳答案

你可以做一件事把名字映射到不同的名字,比如

ID   I_ID    NAME
1     1      tech university
2     1      tech uni
3     1      tech univs

所以这个表将为您的搜索查询链接I\u ID是一个外键,它引用主表中的ID。我想这可以解决你的问题,你可以为一个名字定义几个名字。
此外,使用正则表达式可以提高效率,您必须为此开发一个自定义函数,尽管REGEXP的一般用法如下
SELECT id, name FROM tblName WHERE name REGEXP 'tech'

有关REGEXP的更多信息,请参考http://www.tutorialspoint.com/mysql/mysql-regexps.htm

关于mysql - 在数据库列上提前搜索,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26116101/

10-09 00:37