SQL查询运行缓慢
我让这个查询工作,但它真的很慢。我是SQL新手,因此如果您对调优有任何帮助,我将不胜感激SQL查询运行缓慢,sql,Sql,我让这个查询工作,但它真的很慢。我是SQL新手,因此如果您对调优有任何帮助,我将不胜感激 SELECT REPLACE(LoweredUserName,'@domain.com','') as Name, COUNT(LoweredUserName) as Numb FROM aspnet_Users JOIN WarrantyRegistration ON CHARINDEX('Added by ' + aspnet_Users.LoweredUser
SELECT
REPLACE(LoweredUserName,'@domain.com','') as Name,
COUNT(LoweredUserName) as Numb
FROM
aspnet_Users
JOIN
WarrantyRegistration ON CHARINDEX('Added by ' + aspnet_Users.LoweredUserName,
WarrantyRegistration.Comment) > 0
GROUP BY
aspnet_Users.LoweredUserName
ORDER BY
LoweredUserName ASC
谢谢您正在执行
aspnet\u用户
*和*保修注册
的交叉连接,尽管这可能并不明显,因为必须(再次)为每个aspnet\u用户记录搜索每个保修注册记录的名称
您是否可以在
WarrantyRegistration.Comment
*上创建索引以支持此查询?如果WarrantyRegistration
表具有添加注册的用户的id,您应该在id上加入,而不是执行CHARINDEX()
加入。如果你不能做一个外键连接,你应该认真考虑修改你的模式,如果可能的话,你可以,你需要给我们看看表格和索引定义。诊断慢速查询需要完整的表和索引定义,而不仅仅是描述或解释。也许您的表定义不好。可能索引没有正确创建。也许你在你认为你有的专栏上没有索引。如果看不到表和索引定义,我们无法判断。如果您知道如何进行解释或获取执行计划,请将结果也放在问题中。@AndyLester这些操作不可搜索,因此索引是什么并不重要。