朋友问我为什么一条简单的语句查询要花48秒,告诉我表中大概有1000多w数据,语句如下,

REATE PROCEDURE [dbo].[SMS_FEESELECT]
 @DestTerminalID  VARCHAR(13)  --用户号码 为什么长度13位? 用户手机号码11位+86 =总位长11

AS
 
  BEGIN
  
     SET NOCOUNT ON

SET @DestTerminalID= LTRIM(RTRIM(@DestTerminalID)) --首先将WEB页面上用户填写的号码左右去空格

SET @DestTerminalID = '86' + @DestTerminalID --将WEB页面上用户填写的号码+86

 SELECT * FROM SMS_FEE WHERE DESTTERMINALID=@DestTerminalID --查询数据

      SET NOCOUNT OFF

END

--********************[SMS_FEE]********************
GO

 

我想:

这种简单查询能消耗这么长时间??
没建索引吧,
按照where字句的字段建索引,应该0秒就能检索出来

CREATE NONCLUSTERED INDEX IX_SMS_FEE ON dbo.SMS_FEE
(
   DestTerminalID
ON [PRIMARY]
 
问题就酱紫解决了.......
 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-06-10
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-22
猜你喜欢
  • 2021-11-20
  • 2021-10-15
  • 2021-11-11
  • 2021-09-03
  • 2022-12-23
  • 2021-06-17
相关资源
相似解决方案