在我的 android 应用程序中,我有一个搜索字段,用户可以在其中输入内容。他们可以在我的数据库中键入他们想要的任何内容,例如姓名、地址、电话号码、电子邮件等。
我希望它像谷歌搜索中的多合一搜索栏,因此他们可以键入诸如名称和地址之类的组合。
问题是我将如何进行搜索,其中搜索文本可以包含多个短语?
例如,如果用户搜索“Jack Daniel jdaniel@hotmail.com”,那么我希望 mysql select 语句最终如下所示:
select id from members
where firstname=`Jack` or firstname=`Daniel` or firstname=`jdaniel@hotmail.com`
or lastname=`Jack` or lastname=`Daniel` or lastname=`jdaniel@hotmail.com`
or email=`Jack` or email=`Daniel` or email=`jdaniel@hotmail.com`
基本上搜索文本的每个短语都需要与所有列进行比较。
MySQL 是否有内置机制可以轻松执行此操作,还是我必须在 java 中解析字符串并手动构建 sql 语句?
谢谢