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 :

Problème de requete trop lente , je cherche une alternative


Sujet :

MS SQL Server

  1. #1
    Membre actif Avatar de mobscene
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    331
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 331
    Points : 234
    Points
    234
    Par défaut Problème de requete trop lente , je cherche une alternative
    Salut a tous j'ai besoin de vous pour optimiser une requête sql que voila

    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
    16
    17
    18
    SELECT 
                                  P.pic_link 'pictures_link',
                                  P.web_id,
                                  F.feed_link 'feed_link',
                                  F.web_id,
                                  D.doc_link 'document_link',
                                  D.web_id,
                                  A.web_link 'web_link',
                                  A.web_id
                             FROM WEB W
                             LEFT JOIN pictures P
                             ON P.WEB_ID >= 2 
                             LEFT JOIN FEED F
                             ON F.WEB_ID >= 2
                             LEFT JOIN document D
                             ON D.WEB_ID >= 2
                             LEFT JOIN web A
                             ON A.WEB_ID >= 2

    Elle fonctionne mais est d'une lenteur halucinante le serveur sql a vraiment du mal.

    J'ai essayé de l'optimiser en passant par l'optimiseur fournit avec sql server mais cela ne ma pas avancé !!


    merci de votre aide et bon code !!!

  2. #2
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 75
    Points : 84
    Points
    84
    Par défaut
    Et de cette manière est ce que c'est aussi long?

    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
    16
    17
    18
     
    SELECT P.pic_link 'pictures_link', P.web_id
    FROM pictures P WHERE P.WEB_ID >= 2 
     
    UNION
     
    SELECT F.feed_link 'feed_link', F.web_id
    FROM FEED F WHERE  F.WEB_ID >= 2  
     
    UNION
     
    SELECT D.doc_link 'document_link', D.web_id
    FROM document D WHERE D.WEB_ID >= 2
     
    UNION
     
    SELECT A.web_link 'web_link', A.web_id
    FROM web A WHERE A.WEB_ID >= 2
    Selon le ratio volume de données renvoyé sur le volume de donnée total
    pour chaque table tu peux envisager la pose d'un index..

    Teste les requêtes séparément pour voir ce que ca donne en temps de réponse.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    SELECT web_link as 'web_link', web_id
    FROM xxx WHERE WEB_ID >= 2

  3. #3
    Membre actif Avatar de mobscene
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    331
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 331
    Points : 234
    Points
    234
    Par défaut
    Ta requête est plus rapide mais il y e quelque chose d'étrange les données sont systématiquement dans la colone 'pictures_link' car c'est celle de la première requete.

    Je ne suis pas particulièrement doué pour le sql donc je me demande si c'est normal .

  4. #4
    Expert éminent
    Homme Profil pro
    Big Data / Freelance EURL
    Inscrit en
    Mars 2003
    Messages
    2 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Big Data / Freelance EURL

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 124
    Points : 7 291
    Points
    7 291
    Par défaut
    y'a quelque chose d'illogique dans la requête du premier message... ou alors de voulu ?:
    C'est normal qu'il n'y ait pas de jointure entre la table WEB et les autres tables ? Autrement dit qu'il y ait un produit cartésien entre la table WEB et chaque autre tables ?
    Dans ce cas c'est logique que ça rame.

    Moi je proposerais plutôt ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SELECT P.pic_link 'pictures_link', P.web_id, F.feed_link 'feed_link', 
    F.web_id, D.doc_link 'document_link', D.web_id, A.web_link 'web_link', A.web_id 
    FROM WEB W 
    LEFT JOIN pictures P ON W.WEB_ID=P.WEB_ID  
    LEFT JOIN FEED F ON W.WEB_ID=F.WEB_ID  
    LEFT JOIN document D ON W.WEB_ID=D.WEB_ID  
    LEFT JOIN web A  ON W.WEB_ID=A.WEB_ID  
    WHERE W.WEB_ID >= 2
    Sinon faudrait nous dire qu'est-ce que tu veux...

  5. #5
    Membre actif Avatar de mobscene
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    331
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 331
    Points : 234
    Points
    234
    Par défaut
    je n'avais pas vue l'erreur , sa marche niquel

    merci a tous

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

Discussions similaires

  1. Requete trop lente
    Par theOnlyOne dans le forum Requêtes
    Réponses: 25
    Dernier message: 25/11/2010, 17h23
  2. [MySQL] requete trop lente
    Par mademoizel dans le forum PHP & Base de données
    Réponses: 23
    Dernier message: 10/08/2010, 23h03
  3. pb requete trop lente.(tables sans relation)
    Par zeloutre dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 27/04/2007, 08h48
  4. requete trop lente
    Par ob1knob dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 16/03/2007, 18h21
  5. Problème avec Storable cherche une alternative
    Par mobscene dans le forum Modules
    Réponses: 4
    Dernier message: 11/02/2007, 23h21

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