p
u
b
l
i
c
i
t
é
publicité
  1. #1
    Expert Confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    juillet 2006
    Messages
    3 562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : juillet 2006
    Messages : 3 562
    Points : 3 560
    Points
    3 560

    Par défaut Interraction des clauses TOP et ORDER BY

    Bonjour,

    N'ayant pas trouvé mon bonheure à l'aide de Google, j'aimerais juste avoir une précision sur le fonctionnement de la clause top lorsque la requête contient une requête ORDER BY.

    Soit la requête suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    SELECT TOP 100
        CLI_NOM,
        CLI_PRENOM
    FROM
        T_CLIENT_CLI
    ORDER BY
        CLI_NOM,
        CLI_PRENOM
    Est-ce le résultat de cette requête sera les 100 premières trouvées qui seront triées ou bien les 100 premières lignes d'un résultat complet trié ?

    Bref, qu'est-ce qui agit avant l'autre ? (j'imagine que la clause order by s'effectue avant la clause top mais je préfère être sûr)
    Kropernic

  2. #2
    Membre Expert
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    août 2009
    Messages
    624
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : août 2009
    Messages : 624
    Points : 1 040
    Points
    1 040

    Par défaut

    Il va trier puis récupérer les 100 premières lignes
    Blog Perso | Kankuru (logiciel gratuit pour SQL Server)

  3. #3
    Expert Confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    juillet 2006
    Messages
    3 562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : juillet 2006
    Messages : 3 562
    Points : 3 560
    Points
    3 560

    Par défaut

    Je me disais aussi.

    Et c'est rassurant

    Désolé pour la question un peu stupide mais je préfère levé toute ambiguïté.
    Kropernic

  4. #4
    Modérateur

    Homme Profil pro
    Ingénieur d'études en décisionnel
    Inscrit en
    septembre 2008
    Messages
    7 211
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'études en décisionnel
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : septembre 2008
    Messages : 7 211
    Points : 15 121
    Points
    15 121

    Par défaut

    La question n'est pas stupide puisque chez le concurrent Oracle Database il filtre d'abord et tri ensuite - l'équivalent du TOP étant le filtre Where Rownum <= 100.

  5. #5
    Expert Confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    juillet 2006
    Messages
    3 562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : juillet 2006
    Messages : 3 562
    Points : 3 560
    Points
    3 560

    Par défaut

    Citation Envoyé par Waldar Voir le message
    La question n'est pas stupide puisque chez le concurrent Oracle Database il filtre d'abord et tri ensuite - l'équivalent du TOP étant le filtre WHERE Rownum <= 100.


    Je note pour le jour où je bosse avec de l'oracle !
    Kropernic

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 12/03/2012, 09h38
  2. [2005 Express] un Update sur un top avec des clauses Where
    Par zooffy dans le forum Développement
    Réponses: 7
    Dernier message: 14/09/2009, 09h16
  3. ORACLE v. 9 : Vue avec des clauses WHERE
    Par soffinette dans le forum Langage SQL
    Réponses: 4
    Dernier message: 01/02/2007, 14h11
  4. Compatibilité des clauses using
    Par papadrago dans le forum C++
    Réponses: 7
    Dernier message: 22/01/2007, 22h17
  5. [SQL] Placer deux clauses dans un ORDER BY
    Par psychoBob dans le forum PHP & SGBD
    Réponses: 5
    Dernier message: 30/05/2006, 16h13

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