如何从表格(邮政编码,州,国家/地区)中搜索一组地址?

时间:2010-07-22 08:22:00

标签: sql mysql

scenarioi: - 1)用户在搜索字段中输入地址。地址可能是邮政编码,州或国家

2)现在我必须采取可能以任何顺序或可能只包含国家,州或邮政编码的地址,并检查数据库是否存在结果。

关于这个主题的任何建议都很棒

2 个答案:

答案 0 :(得分:1)

这个怎么样?

'SELECT * FROM table WHERE address LIKE \''. addslashes($search) .'\'
  OR zip = '. (int)$search .'
  OR country LIKE \''. addslashes($search) .'\''

答案 1 :(得分:0)

我会做类似的事情:

split address on space

将where子句构建为

WHERE zip||state||country like '%address_part_one%'
   OR zip||state||country like '%address_part_two%'
and so on ...

如果您为三个字段启用了全文:

WHERE MATCH (zip,state,country) AGAINST ('address_part_one')
   OR MATCH (zip,state,country) AGAINST ('address_part_two')
...