如何提高SQL查询的速度?

如何提高SQL查询的速度?,sql,sql-server,Sql,Sql Server,作为我发送的图像 为了获得评论数量,我是否可以在模块表中添加一个字段,我的意思是大记录,如1亿条评论或大项目,哪一个更好/更快将一个字段添加到模块中,并在每次插入评论后更新它或建立关系 要获得评论计数,我必须选择以下选项: select Module.Id, (SELECT COUNT(*) AS Expr1 FROM dbo.CommentTable WHERE (CommentTable.MuoduleId= Module.userid)) A

作为我发送的图像

为了获得评论数量,我是否可以在模块表中添加一个字段,我的意思是大记录,如1亿条评论或大项目,哪一个更好/更快将一个字段添加到模块中,并在每次插入评论后更新它或建立关系

要获得评论计数,我必须选择以下选项:

select Module.Id,
       (SELECT COUNT(*) AS Expr1
        FROM dbo.CommentTable 
        WHERE (CommentTable.MuoduleId= Module.userid)) AS commentCount
from Model


我建议您动态计算,而不是将计数保存在表中。要获取每个
模块的注释计数

SELECT
    m.id,
    CommentCount = COUNT(c.ModuleId)
FROM Module m
LEFT JOIN CommentTable c
    ON c.ModuleId = m.Id
GROUP BY m.id
如果在
注释表(ModuleId)
上有一个索引,这将更快:


我建议您动态计算,而不是将计数保存在表中。要获取每个
模块的注释计数

SELECT
    m.id,
    CommentCount = COUNT(c.ModuleId)
FROM Module m
LEFT JOIN CommentTable c
    ON c.ModuleId = m.Id
GROUP BY m.id
如果在
注释表(ModuleId)
上有一个索引,这将更快:


动态计算。有了适当的索引,查询应该会很快。jquery标记man有什么用???@madalinivascu,快点!每个人都知道它在jquery中是可行的。@FelixPamittan ya在“jquery”、“java脚本”:)那么答案是什么,这是SQL的查询:)动态计算它。有了适当的索引,查询应该会很快。jquery标记man有什么用???@madalinivascu,快点!每个人都知道它在jquery中是可行的。@FelixPamittan ya在“jquery”中,“java脚本”:)那么答案是什么,这是SQL的查询:)那么你是说在第二个表上使用索引会使查询与关系更快是的,这就是我说的。那么你是说在第二个表上使用索引会使查询与关系更快是的,我就是这么说的。
CREATE NONCLUSTERED INDEX NCI_CommentTable_ModuleId ON CommentTable(ModuleId)