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

Langage SQL Discussion :

Quel est le plus performant?


Sujet :

Langage SQL

  1. #1
    Membre expert
    Avatar de trotters213
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 571
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 571
    Points : 3 145
    Points
    3 145
    Par défaut Quel est le plus performant?

    je voudrais savoir ce qui est le plus rapide et le plus correct entre ces 2 procédures stockées (qui font la même chose) :
    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
    /* GET THE SPECIFICATIONS OF AN AREA INCLUDED IN A LAYER COMPARTMENTAL SECTION */
    CREATE PROCEDURE SP_GET_COMPARTMENTAL_SECTION_AREA_COORDINATES
    @AR_ID int
    AS 
    BEGIN
    	SELECT PE_WIDTH, PE_PATTERN, PE_COLOR, BR_PATTERN, BR_FORECOLOR, BR_BACKCOLOR
    	FROM T_PE_PEN, T_BR_BRUSH
    	WHERE PE_ID = (SELECT AR_PE_ID
    				      FROM T_AR_AREA INNER JOIN T_PE_PEN ON AR_PE_ID = PE_ID
    				      WHERE AR_ID=@AR_ID)
    	  AND BR_ID = (SELECT AR_BR_ID
    				      FROM T_AR_AREA INNER JOIN T_BR_BRUSH ON AR_BR_ID = BR_ID 
    				      WHERE AR_ID=@AR_ID)
    END
    GO
    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
    19
    /* GET THE SPECIFICATIONS OF AN AREA INCLUDED IN A LAYER COMPARTMENTAL SECTION */
    CREATE PROCEDURE SP_GET_COMPARTMENTAL_SECTION_AREA_COORDINATES
    @AR_ID int
    AS 
    BEGIN
    	DECLARE @pe_id int ,
    			@br_id int ,
    	SET @pe_id=(SELECT AR_PE_ID
    				   FROM T_AR_AREA INNER JOIN T_PE_PEN ON AR_PE_ID = PE_ID
    				   WHERE AR_ID=@AR_ID)
    	SET @br_id=(SELECT AR_BR_ID
    				   FROM T_AR_AREA INNER JOIN T_BR_BRUSH ON AR_BR_ID = BR_ID 
    				   WHERE AR_ID=@AR_ID)
     
    	SELECT PE_WIDTH, PE_PATTERN, PE_COLOR, BR_PATTERN, BR_FORECOLOR, BR_BACKCOLOR
    	FROM T_PE_PEN, T_BR_BRUSH
    	WHERE PE_ID = @pe_id AND BR_ID = @br_id
    END
    GO
    d'avance

  2. #2
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 222
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 222
    Points : 19 551
    Points
    19 551
    Billets dans le blog
    25
    Par défaut
    2ème
    Sr DBA Oracle / MS-SQL / MySQL / Postgresql / SAP-Sybase / Informix / DB2

    N'oublie pas de consulter mes articles, mon blog, les cours et les FAQ SGBD

    Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !

  3. #3
    Membre expert
    Avatar de trotters213
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 571
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 571
    Points : 3 145
    Points
    3 145
    Par défaut
    c'est clair c'est net c'est précis.

  4. #4
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 222
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 222
    Points : 19 551
    Points
    19 551
    Billets dans le blog
    25
    Par défaut
    ... et pour en être certain, référez-vous à une comparaison des plans d'exécution
    Sr DBA Oracle / MS-SQL / MySQL / Postgresql / SAP-Sybase / Informix / DB2

    N'oublie pas de consulter mes articles, mon blog, les cours et les FAQ SGBD

    Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !

  5. #5
    Membre éclairé Avatar de Spoutnik
    Homme Profil pro
    Inscrit en
    Octobre 2003
    Messages
    672
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 672
    Points : 781
    Points
    781
    Par défaut
    sans vouloir abuser, tu peux expliquer pourquoi stp?
    Two beer or not two beer. (Shakesbeer)
    Question technique par MP => poubelle!

  6. #6
    Membre expert
    Avatar de trotters213
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 571
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 571
    Points : 3 145
    Points
    3 145
    Par défaut
    A mon avis c'est du au fait qu'il n'y a pas de sous-requêtes dans le second.
    Ce doit être plus rapide de faire 3 petites requêtes successives plutôt que 1 plus grosse.

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

Discussions similaires

  1. Réponses: 31
    Dernier message: 22/04/2014, 14h55
  2. [1.x] Quel est le plus performant CMS sous le framework Symfony
    Par belgacem.tlili dans le forum Symfony
    Réponses: 10
    Dernier message: 24/06/2011, 13h36
  3. Réponses: 31
    Dernier message: 09/06/2010, 08h45
  4. Réponses: 9
    Dernier message: 19/06/2006, 15h29
  5. [StringGrid - DrawGrid] Lequel est le plus performant ?
    Par xenos dans le forum Composants VCL
    Réponses: 3
    Dernier message: 01/01/2006, 18h09

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