我建立一个自动提示。目前,目标应用程序是桌面应用程序,但想法是将其构建得如同强大,然后将其包含在网络中。大厦自动提示
现在我在项目的开始:思数据库(SQL Server 2008)
自动提示将是来自〜40.000.000行的表。
现在我的选择是:全文检索或建立一个表像我现在就形容:
我自动提示项目:
a b c
1 2 3
x y z
结果表:
a b c a b c
a b c a c b
a b c b a c
a b c b c a
a b c c a b
a b c c b a
对于每个项目都是如此。
现在我的问题:
那些至极最好的时候,我希望尽量减少自动提示列表中选择搜索的项目?还有其他更好的吗?
谢谢!
迭戈
我索引的所有排列,因为我不会找精确匹配,我想,以减少更多钞票的所有查询时间在每个搜索。因此,当用户开始提示任何字词时,我可以创建一个“%”字样,就这些了。 – Diego 2010-11-11 14:45:22
@Diego:在这种情况下,你绝对应该使用'FULLTEXT'指数 – Quassnoi 2010-11-11 14:46:23
@Diego:即使你决定使用'B-Tree'索引,你不需要索引的所有排列。在你的情况下,索引“a,b,c',”b,a“和”c,b“,这只是”3“记录,而不是”6“。看到这篇文章:http://explainextended.com/2009/05/09/creating-indexes/ – Quassnoi 2010-11-11 14:48:34