我有一个包含 15k 行的澳大利亚邮政编码和地址的 db 表,每行如下所示:
pcode | suburb | state
2048 | Westgate | NSW
2066 | Belina | NSW
使用 jQuery 自动完成触发了一个输入字段,我拆分了用户输入并构建了一个 LIKE 查询,在郊区和邮政编码字段上进行搜索。
这可以解决问题:
SELECT address_id as id, CONCAT(suburb,' ',postcode) as value FROM address WHERE address_id != ''";
foreach ($keywords as $keyword)
{
$query .= " AND (postcode like '".$keyword."%' OR suburb like '%".$keyword."%')";
}
我目前在任何列上都没有索引(除了主键)。我会更好地使用某种全文索引并更改搜索吗?或者考虑到数据量(不是很大),我正在做的事情是否足够有效