+ Répondre à la discussion
Affichage des résultats 1 à 5 sur 5
  1. #1
    Expert Confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    juillet 2006
    Messages
    3 108
    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 108
    Points : 2 973
    Points
    2 973

    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 :
    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 (anciennement Griftou).

  2. #2
    Membre Expert
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    août 2009
    Messages
    622
    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 : 622
    Points : 1 037
    Points
    1 037

    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 108
    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 108
    Points : 2 973
    Points
    2 973

    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 (anciennement Griftou).

  4. #4
    Modérateur

    Homme Profil pro
    Ingénieur d'études en décisionnel
    Inscrit en
    septembre 2008
    Messages
    6 914
    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 : 6 914
    Points : 14 379
    Points
    14 379

    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 108
    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 108
    Points : 2 973
    Points
    2 973

    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 (anciennement Griftou).

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •