使用自由文本字段搜索地址

时间:2014-10-19 15:00:39

标签: sql sql-server

我有一个看起来像这样的数据库表,即地址是一个自由文本字段(我没有设计它):

5 records from the Address Table:
1 The street
2 Pine Street,Lincoln,Lincolnshire
77 Drove Way,Grantham
Drove Way Lincoln
Some house on Ambleside

我有一个应用程序,其地址字段是自由文本(我没有设计它)。我希望用户开始在地址字段中键入地址,然后显示可能出现的列表(希望只有一个)。我想到了几种方法来解决这个问题:

1) Use a LIKE statement e.g. select * FROM dbaddress where address like '%1 The Street%'.  This seems like a bad idea.
2) Free text search.  I have not used this before.

根据我的要求,这是“更好的选择”。有替代方法吗?

1 个答案:

答案 0 :(得分:0)

我以前有类似的东西,在我的情况下,自由文本是更好的选择。如果你可以使用你使用索引的LIKE 'abc%'也是一个更好的选择。

对于类似地址的字段,最好使用begin with。搜索。

最后根据您的需要,如果我是你,我会执行两个查询并在执行计划中对它们进行比较。