La semaine dernière, Damir Sudarevic de cette communauté a aidé avec cette requête à générer un numéro de séquence. J'ai un problème avec quelques problèmes avec celui-ci. Pour une raison quelconque, les enregistrements ne sont pas affichés par OrderDetailsID malgré la spécification dans l'ordre par.Numéro de séquence SQL Server numéro
Les deux colonnes dans la requête ci-dessous et suivants seqNo affiche les enregistrements comme indiqué ci-dessous
Seq SeqNO
1A 1
2A 2
2B 2A
2C 2B
3A 3
3B 3A
3C 3B
Au lieu de cela, comment puis-je l'obtenir comme indiqué ci-dessous
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
Lucero, ce n'est pas là dans la requête que j'ai posté mais, même si je l'ajoute, il n'apparait pas en ordre par OrderDetailsID – acadia