小编MIN*_* LU的帖子

慢速运行的SQL查询

我有一个这样的SQL,但它将在sqlserver中运行17秒.
刚刚注册我的网络的100个用户刚刚同时执行这个sql(80%的cpu使用率),而且没关系.但是明天会超过1000个用户.所以,我的问题是:
1:如何优化这个sql?
2:100用户80%的CPU使用率,1000用户会发生什么?

SET TRANSACTION ISOLATION LEVEL REPEATABLE READ;
BEGIN TRANSACTION;
WITH tempQuestion AS
(
  SELECT 
    DISTINCT(CASE
      WHEN qut.IsComplex=1 THEN qf.Id
      WHEN qut.IsComplex=0 THEN qs.Id END) AS QuestionId,
    (CASE
      WHEN qut.IsComplex=1 THEN qf.Content
      WHEN qut.IsComplex=0 THEN qs.Content END) AS QuestionContent,
    (CASE
      WHEN qut.IsComplex=1 THEN qf.Content
      WHEN qut.IsComplex=0 THEN qs.Content END) AS QuetionContentOri,
    qut.IsComplex AS IsComplex, 
    qut.Id AS QuestionTemplateId,
    qut.Name AS QuestionTemplateName,
    qp.KnowDotCode AS KnowDotCode,
    (CASE
      WHEN qs.QuestionFaceCode IS NULL THEN qp.Analysis
      WHEN qs.QuestionFaceCode IS NOT NULL THEN '' END) …
Run Code Online (Sandbox Code Playgroud)

sql sql-server

2
推荐指数
1
解决办法
72
查看次数

标签 统计

sql ×1

sql-server ×1