IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Oracle Discussion :

Utilsation de ntile ou row_number() pour partitionner le résultat d'une requête


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 64
    Par défaut Utilsation de ntile ou row_number() pour partitionner le résultat d'une requête
    Bonjour,
    J'ai une requête qui me ranène bcp de lignes
    Je souhaite donc partionner et ramener par exemple les 100 premieres les traiter, les 50000 suivants etc...
    J'ai utilisé les requetes suivantes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select   matricule,
             row_number() over(order by matricule) as RNUM       
    from personne where RNUM < 100
    Ma requête fonctionne bien sans la ligne where mais me ramène tout

    Et avec la clause where j'ai un message erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    QL Error: ORA-00904: "RNUM": invalid identifier
    00904. 00000 -  "%s: invalid identifier"

  2. #2
    Membre Expert Avatar de fatsora
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 103
    Par défaut
    Citation Envoyé par sandrine49 Voir le message
    Bonjour,
    J'ai une requête qui me ranène bcp de lignes
    Je souhaite donc partionner et ramener par exemple les 100 premieres les traiter, les 50000 suivants etc...
    J'ai utilisé les requetes suivantes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select   matricule,
             row_number() over(order by matricule) as RNUM       
    from personne where RNUM < 100
    Ma requête fonctionne bien sans la ligne where mais me ramène tout

    Et avec la clause where j'ai un message erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    QL Error: ORA-00904: "RNUM": invalid identifier
    00904. 00000 -  "%s: invalid identifier"
    Bonjour,

    si tu veux faire comme ca
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    select * from (
    select   matricule,
             row_number() over(order by matricule) as RNUM       
    from personne)
    where rnum < 100

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 64
    Par défaut
    Merci ça marche

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Pour imprimer le résultat d'une requête
    Par El rancho dans le forum Access
    Réponses: 1
    Dernier message: 28/09/2012, 13h04
  2. Réponses: 1
    Dernier message: 15/03/2012, 09h56
  3. [Oracle] Fonction pour lire le résultat d'une requête
    Par bsidy1 dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 07/04/2009, 17h54
  4. Problème pour récupérer le résultat d'une requête
    Par emeraudes dans le forum Hibernate
    Réponses: 1
    Dernier message: 27/07/2007, 10h01
  5. Réponses: 2
    Dernier message: 04/04/2007, 15h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo