开发者社区> 问答> 正文

SQL查询花费的时间太长,无法在服务器(而非本地)中执行

我有一个SQL查询通过视图的计数结果更新列,这是我的查询

UPDATE [dbo].[Table] SET [ColumnName] = (select Count(View.Column) from View where table.Column = View.ColumnN and View.Column1>0)
WHERE [dbo].[Table].Column in (select Column from View) 当我在本地SqlServer中执行此查询时,此查询将花费1秒,但是当我在部署了应用程序的服务器中执行该查询时,大约需要1.36分钟,我在做什么错了:)提前Thnks

问题来源于stack overflow

展开
收起
保持可爱mmm 2019-11-15 17:28:35 546 0
1 条回答
写回答
取消 提交回答
  • 很常见 有时记录从10到100显然会导致效率降低。尝试先进行分组,然后使用连接合并更新记录。您的列关系对我来说并不明确,仅供参考。

    UPDATE [dbo].[Table] SET [ColumnName] = d.Result FROM (SELECT View.ColumnN, COUNT(View.Column) AS Result FROM View GROUP BY View.ColumnN WHERE View.Column1 > 0) d INNER JOIN [dbo].[Table] t ON d.ColumnN = t.Column

    2019-11-15 17:28:47
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
如何运维千台以上游戏云服务器 立即下载
网站/服务器取证 实践与挑战 立即下载
ECS计算与存储分离架构实践 立即下载