0
我对SQL Server性能测试相当新,但我想加快我的搜索查询速度。我有一个名为locations
的表,它仅用于“GET”。我有2列叫做city
和state
。用户输入一些搜索条件到一个文本框,然后我带回从该位置信息使用下面的代码ASP.NET MVC 3索引varchar列
var city = textbox.city;
var state = textbox.state;
var search = sqlConnection.Query<location>("Select * from locations where city = @Ucity AND state = @Ustate", new { Ucity = city, Ustate = state }).FirstOrDefault();
两个柱子均Varchar(50)
,将它们编索引使查询速度更快?或者以某种方式优化我的查询。我听到很多混合的答案,因为这些是字符串。
索引*可能*有帮助 - 但是因为您通过使用'SELECT * FROM ....'回退**所有列**,所以可能性相当小。除非您的查询条件是非常有选择性的 - 返回的数据行数少于1-5% - 即使存在索引,SQL Server的查询优化器也会使用表扫描/聚簇索引扫描,这一点很好 - 因为它总是需要做一个昂贵的密钥查找到实际的数据来获取**所有列** –
如何混淆ASP.NET与SQL Server? –
我没有混淆任何部分,我也期待看看是否有任何我可以优化我的搜索查询。 – user1591668