1

我正在为一个网站创建一个搜索功能,我需要从输入中获取用户的完整地址,例如“地址 32、城市、地区、国家、邮政编码”(此订单不需要)并返回周围可用的餐厅该地区。我有一个表格“地址”,其中每个元素都有一个字段。我正在考虑连接数据库中的用户地址,并在 SQL REGEXP 的帮助下将其与用户的输入进行比较。是否有任何其他近似的 SQL 搜索可以给我,或者你能建议我一种不同的方法吗?一位朋友建议使用(http://www.simonemms.com/2011/02/08/codeigniter-solr/),但是通过对其进行少量研究,问题仍然存在。

4

1 回答 1

0

在 SQL 中将地址连接在一起的问题是使用索引会错过它。因此它会很慢。此外,如果您不知道输入元素的顺序,那么它与从数据库连接的内容(可能是不同的顺序)匹配的机会很小。

我建议对大部分地址项目,将它们分成不同的表(即区域表、另一个国家表等),并将 ID 存储在用户表的列中。

对于搜索,确定哪个搜索字段与哪个实际字段匹配,然后加入这些字段以查找真实地址。

也意味着您可以更轻松地识别错别字。

于 2012-12-05T11:13:03.943 回答