1
2
如果您绝对确定您的搜索字符串可以规范化(例如:去掉所有多余的空格,强制小写等),以避免歧义,您需要搜索完全匹配(即,您要么找到规范化字符串,要么不需要按子字符串搜索,soundex,partial match,sort by it etc.-这就是我如何读取你的“by exactly this string”)你可以考虑计算字符串的hashcode,把它放在db中并索引它。 如果您使用返回数字的hashcode函数,您将拥有一个非常高效的访问索引。当然,您仍然可以保留原始字符串字段,以便打印和使用不同的访问方法。 可能的问题:虽然hashcode可以将散列冲突的可能性降到最低,但不能保证它们不会发生,所以您也应该对此进行管理。 另外,除非你有很多地址,否则我怀疑加速增益是否值得你费心。 |
2
1
mysql可以管理坐标并对这些值进行操作,请尝试查看 http://dev.mysql.com/doc/refman/5.0/en/spatial-extensions.html 如果你想要更简单的东西,我通常会分别存储城市代码、城市名称和地址字符串的其余部分。然后我可以索引和搜索这些字段(一个接一个,或组合)。 如果您想简单地使用坐标,只需存储纬度/经度并进行基本比较 |
3
0
可以找到答案 here |
Michael Samuel · MYSQL在以下情况下自动创建索引 6 年前 |
Patricia Rozario · 数据库设计确保一对一关系 6 年前 |
dryhay · MySQL“多对多”关系错误 6 年前 |
L. Fox · 我在这里用的是什么样的Laravel雄辩的关系 6 年前 |
Geoff Harper · 我应该如何构建关系松散的SQL db 6 年前 |
waroxx · SQL—当多个表具有相同的列时,最好怎么做 6 年前 |
Lumpi01 · SQL 2不同的注释类型-最佳解决方案? 6 年前 |
Hayreddin Tüzel · 预约系统数据库建模[关闭] 6 年前 |