gpt4 book ai didi

mysql - 通过自动完成、类似 MySQL 或全文搜索来搜索 15k 地址行?

转载 作者:可可西里 更新时间:2023-11-01 08:36:26 25 4
gpt4 key购买 nike

我有一个包含 15k 行的澳大利亚邮政编码和地址的数据库表,每行如下所示:

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."%')";
}

我目前在任何列上都没有索引(除了主键)。我会更好地使用某种全文索引并更改搜索吗?或者考虑到数据量(不是很大),我正在做的事情就足够高效了

最佳答案

最有效的索引类型是数字列索引。正如其他人所建议的那样,15k 不是一个大记录集,但就用户体验而言,当您键入单个字符时,可能会有大量记录,从而使其成为可用性噩梦。

建议 - 在您的 sql 中使用 LIMIT 子句,以便您可以将结果集限制为可管理的大小。假设一次有 15 条记录。

关于mysql - 通过自动完成、类似 MySQL 或全文搜索来搜索 15k 地址行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10467347/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com