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 :

Regrouper les champs identiques de plusieurs tables dans une même vue


Sujet :

PL/SQL Oracle

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2004
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 14
    Points : 13
    Points
    13
    Par défaut Regrouper les champs identiques de plusieurs tables dans une même vue
    Bonjour,

    Y'a t il un moyen de créer une vue qui se base sur plusieurs tables et qui reprend des champs communs à ces tables?

    Par exemple :
    t1 a parmi ses champs montant et nom
    t2 possède églament ces même champs (même formats etc...)

    Je souhaiterais construire une même vue qui me permettra d'afficher ces deux données pour t1 et t2

    Merci d'avance!

  2. #2
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    create view machin as
    select t1.nom t1_nom, t1.montant t1_montant, 
    		t2.nom t2_nom, t2.montant t2_montant
    from t1
    join t2 ON t1.pk1_id = t2.pk2_id

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2004
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 14
    Points : 13
    Points
    13
    Par défaut
    Merci pour la réponse
    mais je pense que je me suis mal expliqué :

    Ce que je veux faire c'est créer une vue qui va aller chercher des données dans deux tables :

    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
     
    t1
    ----
    id
    nom
    montant
    taxe
     
     
    t2
    ---
    id
    nom
    montant
    forfait
    taux
    je souhaiterais obtenir une vue de ce type

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    vue
    ---
    nom
    montant
    dans laquelle seront les listés les valeurs de nom et montant de la table t1 ET t2

    Je ne peux pas faire de liaison par identifiant entre les deux, car il n'aurait aucun sens ici.


    Merci!

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par closo Voir le message
    dans laquelle seront les listés les valeurs de nom et montant de la table t1 ET t2
    Je ne peux pas faire de liaison par identifiant entre les deux, car il n'aurait aucun sens ici.
    Ce n'est pas vraiment claire comme explication...
    Vous cherchez les couples (nom,montant) communes aux deux tables ?
    Faites une jointure par nom et table, où est le problème ?
    Qu'est ce que vous avez fait ?

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2004
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 14
    Points : 13
    Points
    13
    Par défaut
    Non je ne cherche pas les couples communs aux deux tables, je veux que cette vue liste l'ensemble des éléments des deux tables (sans relations entre elles) dans une seule et même vue.

  6. #6
    Invité
    Invité(e)
    Par défaut
    Je ne suis pas sur de tout comprendre.
    Ça aurait été pratique d'avoir des exemples parlant.
    Enfin, je dis ça...
    Un truc comme ça ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    CREATE VIEW machin2 AS
    SELECT nom , montant 
    FROM t1
    UNION
    SELECT nom , montant 
    FROM t2

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2004
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 14
    Points : 13
    Points
    13
    Par défaut
    Merci de votre insistance :-)

    imaginons
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    t1
    ----
    nom   -  mnt     -  contrat  - indice
    M. A  - 100 000 -   x         - 5
    M. B  - 50 000   -   y        - 6
     
    t2
    ----
    nom  - mnt       - ville
    M. C - 20 000   - Paris
    M. D - 10 000   - NY
    j'aurais aimé avoir une vue qui me renvoie ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    v1
    ----
    M. A - 100 000
    M. B - 50 000
    M. C - 20 000
    M. D - 10 000

  8. #8
    Invité
    Invité(e)
    Par défaut
    c'est ma dernière requête.

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

Discussions similaires

  1. [MySQL] Extraire plusieurs champs d'une table dans une même requête
    Par la_chouette dans le forum PHP & Base de données
    Réponses: 15
    Dernier message: 28/11/2012, 11h11
  2. Ajouter les champs identiques de plusieurs tables
    Par philippesorin dans le forum Access
    Réponses: 2
    Dernier message: 27/07/2007, 08h52
  3. [MySQL] affichage de données de plusieurs tables dans un même tableau ?
    Par undebutant dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 19/03/2007, 11h56
  4. plusieurs tables dans une seule table
    Par scully2501 dans le forum Access
    Réponses: 1
    Dernier message: 10/10/2005, 09h19
  5. afficher les champs null de deux tables dans un select
    Par poil dans le forum Langage SQL
    Réponses: 2
    Dernier message: 27/09/2005, 15h05

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