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

PL/SQL Oracle Discussion :

Recherche sur plusieures tables en PL/SQL


Sujet :

PL/SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de anas.eh
    Profil pro
    Inscrit en
    Février 2007
    Messages
    181
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Maroc

    Informations forums :
    Inscription : Février 2007
    Messages : 181
    Par défaut Recherche sur plusieures tables en PL/SQL
    Bonjour,

    J'ai un problème et je suis actuellement bloqué la dessus, j'espère que vous m'aiderez, mon problème est le suivant :

    Je dois écrire en PL/SQL, une requette SQL qui fait une recherche (une sorte de moteur de recherche) sur plusieurs tables (au moins 8 => plusieurs jointures) sur des champs qui peuvent être NULL, vide, pleins ... je ne dois récupérer que la liste des id de la table mère (ROOT), voilà comment j'ai fait mais ça n'a pas marché :

    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
    20
    21
    22
    23
    24
    SELECT tableRoot.Id 
      FROM  table_root tableRoot,
            table_fille1 fille1,
            table_fille2 fille2,
            table_fille3 fille3,
            table_fille4 fille4,
            ...
            WHERE 
              tableRoot.champRoot1 LIKE '%i__var1%' AND
              tableRoot.champRoot2 = i__var2 AND
              tableRoot.champRoot3 = i__var3 AND 
              fille1.champfille1_1  = i__var4  AND
              fille1.champfille1_2 = i__var5  AND
              fille2.champfille2 LIKE   '%i__var6 %' AND
              fille3.champfille3 LIKE   '%i__var7 %' AND
              fille4.champfille4_1  LIKE   '%i__var8 %' AND
              fille4.champfille4_2  LIKE '%i__var9 %' AND
              ...
              -- Inner joins
              fille1.id = tableRoot.fk_id_1 AND
              fille2.id = tableRoot.fk_id_2 AND
              fille3.id = tableRoot.fk_id_3 AND
              fille4.id = tableRoot.fk_id_4
              ...;
    Merci bcp,

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 9
    Par défaut
    Tu ne peux pas mettre des variables dans un champs texte (genre ='ma_variable').
    Personnellement, j'utiliserai plutôt cette clause :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ...
    WHERE
    ...
    INSTR(fille2.champfille2, i__var6) != 0 AND
    ...

  3. #3
    Expert confirmé Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Par défaut
    Citation Envoyé par anas.eh Voir le message
    Bonjour,

    J'ai un problème et je suis actuellement bloqué la dessus, j'espère que vous m'aiderez, mon problème est le suivant :

    Je dois écrire en PL/SQL, une requette SQL qui fait une recherche (une sorte de moteur de recherche) sur plusieurs tables (au moins 8 => plusieurs jointures) sur des champs qui peuvent être NULL, vide, pleins ... je ne dois récupérer que la liste des id de la table mère (ROOT), voilà comment j'ai fait mais ça n'a pas marché :
    ...
    Merci bcp,
    Utilise Sql Dynamique (AskTom - multiple cursors)

Discussions similaires

  1. Recherche sur plusieures tables en SQL
    Par anas.eh dans le forum Langage SQL
    Réponses: 6
    Dernier message: 10/09/2008, 12h00
  2. sql recherche sur plusieurs table / commande IN
    Par Tonio13006 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 22/05/2008, 14h29
  3. Recherche sur plusieurs tables
    Par micatmidog dans le forum Langage SQL
    Réponses: 2
    Dernier message: 09/06/2007, 16h28
  4. [MySQL] moteur de recherche sur plusieurs tables
    Par harlock59 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 10/04/2007, 15h23
  5. [MySQL] Recherche sur plusieurs tables
    Par hubidev dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 21/03/2006, 10h42

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