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 :

dense_rank, récupérer les 10 premier


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2007
    Messages
    203
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 203
    Par défaut dense_rank, récupérer les 10 premier
    REbonjour,

    Je cherche à afficher les 10 premiers pays ayant le plus de partners actifs.
    J'ai réussi à afficher le rangs pour chaque pays mais, en mettant having dense_rank.., cela ne marche pas.
    Je n'arrive pas à récupérer les 10 premiers.

    Voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    select t.country,
           t.nb_partner_actif,
           dense_rank() over(order by t.nb_partner_actif desc) as rang 
    from
    (select a.country,count(p.partner_code) as nb_partner_actif
    from partners p, partner_profile pp,partners_addresses pa,addresses a
    where p.partner_code=pa.partner_code
    and pa.addr_code=a.addr_code
    and p.partner_code=pp.partner_code
    and pa.address_type='000'
     
    and p.delete_flag='N'
    and pp.partner_status is null
    group by a.country)t
    having dense_rank()<=10
    merci beaucoup
    claire

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Il faut encapsulter votre requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT * FROM
    (<votre requête avec le dense_rank>)
    WHERE rang <= 10

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2007
    Messages
    203
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 203
    Par défaut
    merci beaucoup ça marche.

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

Discussions similaires

  1. Récupérer les 6 premiers caracteres d'un VARCHAR
    Par andreditdd dans le forum Bases de données
    Réponses: 7
    Dernier message: 29/04/2007, 15h35
  2. Réponses: 2
    Dernier message: 14/06/2006, 09h30
  3. Réponses: 5
    Dernier message: 24/01/2006, 14h25
  4. Réponses: 8
    Dernier message: 02/11/2005, 14h16
  5. comment récupérer les x premiers enregistrements
    Par laurent82 dans le forum SQL
    Réponses: 7
    Dernier message: 12/12/2004, 16h29

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