ITPub博客

首页 > Linux操作系统 > Linux操作系统 > CTE 內部的逗號使用問題

CTE 內部的逗號使用問題

原创 Linux操作系统 作者:hireats 时间:2008-01-09 08:42:09 0 删除 编辑

如下的SQL 代碼中,如果在 #1 或者 #2 中添加了 ';',會出現錯誤。

--根據頁碼獲取測試記錄集

CREATE PROCEDURE dbo.sp_ATE_getTestRecordByPage

     @pageIndex INT  = 1        --頁碼數(從1 開始)

AS

     --獲取每頁的記錄數

     DECLARE @recordCount INT;

     SELECT @recordCount = CAST([value] AS INT) FROM dbo.tbl_ATE_config WHERE [name] = N'recordCountInEachPage';

     SET @recordCount = ISNULL(@recordCount,30);

     --建立CTE

     WITH CTE_allTestRecord

     AS (

     SELECT ROW_NUMBER() OVER(ORDER BY [ID] DESC) AS sequenceNO,

           [ID],

           CONVERT(VARCHAR(16),[testDateTime],120) AS testDateTime,

           [lineCount],[totalTestCount],[totalPassCount],

           dbo.fun_ATE_getPercent([totalPassCount],[totalTestCount])AS passPercent,--合格率

           [result],[caption],[PINO],[partNO],

           dbo.fun_ATE_formatSequent([beginSN_letter],[beginSN_number],[beginSN_numberLen]) + N'~ ' + --起始流水號

           dbo.fun_ATE_formatSequent([beginSN_letter],[beginSN_number]+[totalTestCount]-1,[beginSN_numberLen]) AS sequenceID, --終止流水號

           [testModel_name],[comment]

     FROM dbo.tbl_ATE_testRecord --#1

     )                           --#2

     --提取分頁的記錄數

     SELECT * FROM CTE_allTestRecord

     WHERE [sequenceNO] BETWEEN (@pageIndex-1)*@recordCount+1 AND @pageIndex*@recordCount;

RETURN

GO

無標題-1.gif

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12685933/viewspace-120025/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 统计学相关资源
请登录后发表评论 登录
全部评论

注册时间:2008-01-08

  • 博文量
    20
  • 访问量
    52766