将connction的commandtimeout设为 0

解决方案 »

  1.   

    作一个中间表先把dbo.Return_Max_Date(GHJCB_ID)) 插入其中
      

  2.   

    SELECT JC_JCZBH AS 寄存证编号, JCR_NAME AS 寄存人, 
          WZ_NAME AS 亡者姓名, JC_KSRQ AS 寄存开始日期, 
          dbo.Return_Max_Date(GHJCB_ID) AS 寄存结束日期, 
          YEAR(dbo.Return_Max_Date(GHJCB_ID)) - YEAR(JC_KSRQ) AS 寄存年限, 
          GH_CFLM + GH_CFTSH + GH_CFJG + GH_CFBH AS 寄存位置, JC_JBR AS 经办人, 
          JC_JCZFFRQ AS 寄存证发放日期 into #tmpTable
    FROM dbo.GHTSH_JCDJB Aselect TOP 100 PERCENT * from #tmpTable order by JC_KSRQ,寄存年限
      

  3.   

    其实,如果你的记录是7000多条,其实Order占用的时间不是很多。我认为还是调调连接时间,对查询语句进行必要的优化效果更好。所以他们这种建立临时表的方法我并不赞成,优化的效果我认为不好。不好意识,我并不是想攻击你们的,呵呵。
      

  4.   

    to  zx_wang(wzx) ,你的方法我试了,并没有优化。to  BigFoolCat(大笨猫) 你说的也不对,主要是order 语句战用时间的事,还是wsmzhaokun(wsmzhaokun) 说得有道理, 不过没有优化,这就给分
      

  5.   

    用dbo.Return_Max_Date排序应该会占用很多时间,若直接从表中读取会快很多