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

DB2 Discussion :

Optimisation des fonctions?


Sujet :

DB2

  1. #1
    Rédacteur
    Avatar de JauB
    Homme Profil pro
    Freelancer
    Inscrit en
    Octobre 2005
    Messages
    1 792
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Maroc

    Informations professionnelles :
    Activité : Freelancer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 792
    Points : 2 914
    Points
    2 914
    Par défaut Optimisation des fonctions?
    Bonjour,
    je chercher à executer une requête ensemble de tables sur un champ X avec un paramètre Y et je veux que ma requête s'execute automatiquement sur le champ X avec le paramètre Y+1 au sein de la même requête. ceci je pense peut ête fait par les fonctions (ou par l'union aussi).
    exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT ma.Nom, maFonction(Y+1)
    FROM maTable ma
    WHERE champX=Y
    avec :
    maFonction est une fonction contenant la même requête précédente et qui pour paramètre Y+1 :

    maFonction: return SELECT ma.NOM FROM maTable WHERE champX=Y+1


    ma question est : est ce qu'il y a moyen d'optimiser tout ça vu que ma fonction réexecute la même requête ce qui n'est pas bon!
    Merci

  2. #2
    jab
    jab est déconnecté
    Rédacteur
    Avatar de jab
    Homme Profil pro
    SharePoint developpeur
    Inscrit en
    Février 2004
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : SharePoint developpeur
    Secteur : Service public

    Informations forums :
    Inscription : Février 2004
    Messages : 1 173
    Points : 4 339
    Points
    4 339
    Par défaut
    J'ai du mal à comprendre

    Si tu proposes union comme solution alors pourquoi pas ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT ma.Nom
    FROM ma
    WHERE champX=Y or champX=Y+1
    Ou probablement mieux si champx est indexé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT ma.Nom
    FROM ma
    WHERE champX>=Y and champX<=Y+1
    Si tu veux les noms un à côté de l'autre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT ma.Nom, mabis.nom
    FROM ma join ma as mabis on ma.champx+1=mabis.champX
    WHERE ma.champX=Y
    Syntaxe à vérifiée mais l'idée est la.

  3. #3
    Membre expérimenté

    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    1 298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 298
    Points : 1 578
    Points
    1 578
    Par défaut ?
    JauB,

    Ta question n'est pas claire et on a du mal à comprendre ce que tu cherches à faire. Peux-tu développer un peu plus ton souci pour nous éclairer ?

  4. #4
    Rédacteur
    Avatar de JauB
    Homme Profil pro
    Freelancer
    Inscrit en
    Octobre 2005
    Messages
    1 792
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Maroc

    Informations professionnelles :
    Activité : Freelancer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 792
    Points : 2 914
    Points
    2 914
    Par défaut
    je cherche tout simplement un moyen pour éviter l'utilisation des fonctions dans mes requêtes car à chaque fois ma fonction réexecute la même requête du SELECT!

    select t1.a, maFonction(t1.b)
    from table t1
    where t1.c=X

    maFonction returns select t1.d from table t1 where t1.c=b

    !

  5. #5
    Membre expérimenté

    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    1 298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 298
    Points : 1 578
    Points
    1 578
    Par défaut
    Tu dis :
    je cherche tout simplement un moyen pour éviter l'utilisation des fonctions dans mes requêtes...
    Si tu veux éviter l'utilisation des fonctions dans tes requêtes, alors n'indique pas de fonctions() sur les instructions SQL ???

    Désolé, je suis peut-être bouché mais je ne comprends toujours pas.

  6. #6
    jab
    jab est déconnecté
    Rédacteur
    Avatar de jab
    Homme Profil pro
    SharePoint developpeur
    Inscrit en
    Février 2004
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : SharePoint developpeur
    Secteur : Service public

    Informations forums :
    Inscription : Février 2004
    Messages : 1 173
    Points : 4 339
    Points
    4 339
    Par défaut
    Citation Envoyé par Mercure
    Désolé, je suis peut-être bouché mais je ne comprends toujours pas.
    +1

    Si j'ai bien compris,
    l'idée est de faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT t1.a, maFonction(t1.b) from maTable where t1.C=X
    et maFonction effectue
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT t1.a from maTable where t1.C=X
    ou X est T1.b du premier select

    c'est cà ?

Discussions similaires

  1. Optimiser cette fonction de correction des domaines d'email
    Par fwebconcept dans le forum Langage
    Réponses: 4
    Dernier message: 30/10/2014, 23h51
  2. Liste des fonctions
    Par Mookie dans le forum C
    Réponses: 2
    Dernier message: 22/09/2003, 17h42
  3. Des fonctions OGL pour les images de format usuel ?
    Par jamal24 dans le forum OpenGL
    Réponses: 3
    Dernier message: 31/05/2003, 22h59
  4. Appel à des fonctions incluses dans des DLL
    Par Greybird dans le forum Langage
    Réponses: 3
    Dernier message: 26/05/2003, 14h33
  5. Implémentation des fonctions mathématiques
    Par mat.M dans le forum Mathématiques
    Réponses: 9
    Dernier message: 17/06/2002, 17h19

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