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

SQL Oracle Discussion :

Recherche une valeur d'un champ dans plusieurs tables


Sujet :

SQL Oracle

  1. #1
    Membre du Club
    Inscrit en
    Janvier 2010
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 153
    Points : 59
    Points
    59
    Par défaut Recherche une valeur d'un champ dans plusieurs tables
    Bonjour,
    Je suis un vrai "newbie" en Oracle et SQL, je suis en train de travailler sur une grande base de données (avec environ 1000 tables). Il n'y a pas de docs sur les tables et les champs des tables.

    Par contre j'ai un fichier d'Excel de résultat des requêtes sur la base et je veux bien remonter à la table et champ dans la base.

    Par exemple, quel est le moyen de chercher dans toutes les tables et tous les champs pour trouver un champs qui a valeur, disons "abc xyz"

    Merci

  2. #2
    Membre actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2011
    Messages : 146
    Points : 263
    Points
    263
    Par défaut
    tu peux retrouver le nom des colonnes et des tables dans les vues oracle :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT owner,table_name,column_name
    FROM ALL_TAB_COLUMNS
    where column_name like '%...%';
    Après il n'existe pas ( à ma connaissance ) un moyen direct de retrouver une valeur parmis la database ( j'ose même pas imaginer les temps de reponses ).

    pour retrouver une vue oracle :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM DICTIONARY;
    Cordialement.

  3. #3
    Invité
    Invité(e)
    Par défaut
    J'ai déjà fait ça avec du sql dynamique qui vérifie dans les colonnes suivant le type (pas la peine de chercher une chaine de caractères dans un nombre...)
    C'est hyper-bourrin et contre-performant : à ne pas faire sur la PROD.

  4. #4
    Membre du Club
    Inscrit en
    Janvier 2010
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 153
    Points : 59
    Points
    59
    Par défaut
    Citation Envoyé par 7gyY9w1ZY6ySRgPeaefZ Voir le message
    J'ai déjà fait ça avec du sql dynamique qui vérifie dans les colonnes suivant le type (pas la peine de chercher une chaine de caractères dans un nombre...)
    C'est hyper-bourrin et contre-performant : à ne pas faire sur la PROD.
    Justement ce type de requête m'intéresse, peux tu me montrer?

    En tout cas je travaille avec une base de veille, donc bas de souci au niveau des performance

    Merci

  5. #5
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par hibou107 Voir le message
    Justement ce type de requête m'intéresse, peux tu me montrer?
    Ça c'est perdu dans les déménagements mais ça ne demande pas un gros niveau à refaire.
    Regarde dans la vue système all_tab_columns et créer une requête dynamique qui fera la recherche sur cette colonne.

  6. #6
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 947
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 947
    Points : 5 846
    Points
    5 846
    Par défaut
    Tu peux t'inspirer du post suivant pour faire ce dont tu as besoin :
    recherche une chaîne de caractère dans l'ensemble des champs de la base

    Mais c'est effectivement très consommateur en ressource donc à ne pas lancer en prod impunément... c'est plutôt pour comprendre un mauvais schema en dev.

Discussions similaires

  1. rechercher la valeur d'un champs dans les champs d'une autre table
    Par aloe-vera dans le forum Développement de jobs
    Réponses: 4
    Dernier message: 02/08/2012, 15h53
  2. Réponses: 9
    Dernier message: 08/06/2011, 00h24
  3. Réponses: 10
    Dernier message: 12/09/2008, 11h09
  4. Recherche d'un champ dans plusieurs tables
    Par bogizo dans le forum SQL
    Réponses: 7
    Dernier message: 17/10/2007, 17h33
  5. mettre une valeur a un champs dans un onglet..
    Par Fritzoune dans le forum Access
    Réponses: 2
    Dernier message: 03/03/2006, 15h33

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