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

MS SQL Server Discussion :

Amis DBAs : question idiote sur les perfs


Sujet :

MS SQL Server

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 434
    Points : 502
    Points
    502
    Par défaut Amis DBAs : question idiote sur les perfs
    Bonjour,

    je sais que la question peut paraitre idiote mais je la pose tout de même.

    Prenons une table avec un champ ID de type INT indexé (et la table à 10 autres champs mais qu'importe).

    Les valeurs de ce champs vont de [0; infini[

    Quelle est, des ces deux requêtes, la plus rapide, sachant que le résultat retourné est strictement identique (en supposant qu'on a une bonne 100aine de millions d'enregistrement)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    --requete 1
    SELECT * 
    FROM MATABLE
    WHERE ID >0
     
    --requete 2
    SELECT * 
    FROM MATABLE
    WHERE ID <>0
    En d'autre terme, sur un entier numérique, est-ce qu'une comparaison de type > est plus ou moins optimisée qu'une comparaison de type <> ?

    Cdlt

  2. #2
    Invité
    Invité(e)
    Par défaut
    J'aurai tendance à dire que le résultat est le même, et que le moteur d'exécution des requêtes se base sur les statistiques de ce champ.

  3. #3
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 862
    Points : 53 015
    Points
    53 015
    Billets dans le blog
    6
    Par défaut
    Aucune des deux n'est optimisable car aucune des constructions de la clause WHERE n'est "SARGEABLE" (Search ARGument ABLE).

    A +

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 434
    Points : 502
    Points
    502
    Par défaut
    Citation Envoyé par SQLpro
    Aucune des deux n'est optimisable car aucune des constructions de la clause WHERE n'est "SARGEABLE" (Search ARGument ABLE).

    A +
    Et pourquoi dans ce cas précis, l'index ne sera pas utilisé ?

  5. #5
    Expert confirmé
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Points : 4 043
    Points
    4 043
    Par défaut
    Salut,

    Quelques éléments ici
    http://www.developpez.net/forums/sho...d.php?t=186224

    En un mot, et pour reprendre l'excellente comparaison de SQLPro : si tu sais que tu dois aller démarcher chaque bâtiment de la rue de Vaugirard, tu ne vas pas rentrer chez toi entre chaque visite pour chercher le numéro suivant dans l'annuaire.

Discussions similaires

  1. question idiote sur terme utilisé dans les offres
    Par coyott dans le forum Emploi
    Réponses: 4
    Dernier message: 24/08/2005, 17h16
  2. Question générale sur les affectations ?
    Par Clemaster dans le forum C++
    Réponses: 5
    Dernier message: 09/08/2004, 17h03
  3. Question simple sur les threads :)
    Par momox dans le forum C++Builder
    Réponses: 2
    Dernier message: 15/06/2003, 04h13
  4. question (peut-être idiote) sur les vues
    Par LadyArwen dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 26/03/2003, 10h35

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