SELECT * FROM Restaurants WHERE Name LIKE '%{$_GET["searchval"]}%'
上面的代码将返回Restaurants表中名称字段包含searchval的所有条目。
例如,如果searchval是“Example Entry”并且数据库有一个名为“Example Entry Number Five”的条目,则会显示该条目。但是,如果条目是“示例五”,则不会显示。
如何使数据库条目包含字符串中的任何一个单词,它将如何显示。如果条目中包含“示例”或“条目”,则显示“示例条目”。
答案 0 :(得分:0)
最佳解决方案是全文索引。但是,您可以使用正则表达式执行所需操作。
假设单词只用一个单词分隔,你可以这样做:
where name rlike replace({$_GET["searchval"]}, ' ', '|')
如果您真的想采用正则表达式方法,我建议您在应用程序层中进行值解析。但是,这确实可以在数据库中执行您想要的操作,假设单词由空格分隔而不使用特殊的正则表达式字符。