Проблема с порядковым номером SQL Server - PullRequest
0 голосов
/ 28 января 2010

На прошлой неделе Дамир Сударевич в этом сообществе помог с этим запросом сгенерировать следующий номер. У меня есть одна проблема с парой проблем с этим. По какой-то причине записи не отображаются OrderDetailsID, несмотря на указание его в порядке.

В двух столбцах в запросе ниже seq и seqNo отображаются записи, как показано ниже

Seq  SeqNO
1A  1
2A  2
2B  2A
2C  2B
3A  3
3B  3A
3C  3B

Вместо этого, как мне получить его, как показано ниже

SeqNo
1
2A
2B
2C
3A
3B
3C

WITH  OrderDetails 
        AS ( SELECT prodcode 
                   ,prodDesc 
                   ,orderID
                   ,OrderDetailID
                   ,DENSE_RANK() OVER ( ORDER BY prodCode) AS [RnkSeq] 
                   ,ROW_NUMBER() OVER ( PARTITION BY prodCode ORDER BY OrderDetailID ) AS [NumSeq] 
             FROM   OrderDetails where orderID=65303 
           ) 
  SELECT  OrderDetailID 
         ,prodcode 
         ,CAST(RnkSeq AS varchar(10)) + CHAR(64 + NumSeq) as Seq
         ,Replace(CAST(RnkSeq AS varchar(10)) + CHAR(63 + NumSeq),'@','') AS SeqNo
         ,orderID  
  FROM    OrderDetails  

Ответы [ 2 ]

0 голосов
/ 31 января 2010

Добавьте это в конце после оператора FROM:

ORDER BY SeqNo

Надеюсь, это поможет.

0 голосов
/ 28 января 2010

Я не вижу ORDER BY?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...