1
votes

Je veux afficher le numéro de ligne avec la séquence

J'ai terminé ma requête SQL sauf le numéro de ligne. Je veux afficher le numéro de ligne Par exemple

 SELECT * 
 FROM ( SELECT xsl.VENDOR_NAME
               , nvl(xsl.DR , 0) - nvl(xsl.CR , 0) Balance
               , ROW_NUMBER() OVER(PARTITION BY nvl(xsl.DR , 0) - nvl(xsl.CR , 0) ORDER BY  nvl(xsl.DR , 0) - nvl(xsl.CR , 0)) rank_max 
        FROM xxng_supp_ledger xsl) 
 ORDER BY rank_max 

voici ma requête:

  | # | VENDOR NAME  | VENDOR BALANCE |
  +---+--------------+----------------+
  | 1 | VendorName_1 |     Balance1   |
  | 2 | VendorName_2 |     Balance2   |
  | 3 | VendorName_3 |     Balance3   |
  | 4 | VendorName_4 |     Balance4   |


0 commentaires

3 Réponses :


0
votes

Vous pouvez utiliser la fonction analytique ROW_NUMBER dans la requête externe comme suit:

SELECT ROW_NUMBER() OVER (ORDER BY rank_max) AS RN, T.* FROM (
        SELECT
          xsl.VENDOR_NAME, 
           nvl(xsl.DR , 0) - nvl(xsl.CR , 0) Balance
         ,ROW_NUMBER() OVER(PARTITION BY nvl(xsl.DR , 0) - nvl(xsl.CR , 0) ORDER BY  nvl(xsl.DR , 0) - nvl(xsl.CR , 0)) rank_max 
        FROM xxng_supp_ledger xsl
      ) T
      ORDER BY rank_max


0 commentaires

1
votes

Je pense que c'est ce que vous recherchez:

SELECT xsl.VENDOR_NAME
       , nvl(xsl.DR , 0) - nvl(xsl.CR , 0) Balance
       , ROW_NUMBER() OVER(ORDER BY  (nvl(xsl.DR , 0) - nvl(xsl.CR , 0)) desc) rank_max 
FROM xxng_supp_ledger xsl

Voici une démo

Cela le classera par valeur de solde du plus élevé au plus bas.


0 commentaires

0
votes
ROW_NUMBER() OVER (
    [PARTITION BY partition_expression, ... ]
    ORDER BY sort_expression [ASC | DESC], ...
)

3 commentaires

Bien que ce code puisse fournir une solution à la question, il est préférable d'ajouter un contexte expliquant pourquoi / comment cela fonctionne. Cela peut aider les futurs utilisateurs à apprendre et à appliquer ces connaissances à leur propre code. Vous êtes également susceptible d'avoir des commentaires positifs des utilisateurs sous la forme de votes positifs, lorsque le code est expliqué.


@Mukeem J'ai déjà essayé celui-ci aussi mais je n'ai pas obtenu mon exigence.


Ceci est simplement copié à partir de sqlservertutorial.net/sql- fonctions-fenêtre-serveur /…