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 :

héritage et nom table


Sujet :

Langage SQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 68
    Points : 52
    Points
    52
    Par défaut héritage et nom table
    Bonjour,

    Malgrès mes recherches, je ne trouve rien au sujet de mon problème,

    imaginons le schema suivant :

    Pere(#id)

    et deux tables qui héritent de père :

    Fils1(#id)
    Fils2(#id)

    Evidemment chaque table à d'autres attributs.

    Je voudrais faire une sélection à l'aide d'une jointure, et surtout récupérer le type du tuple, de sorte à avoir :

    1 fils1
    2 fils2
    3 fils2

    etc.....

    Dans ma requête, je dois absolument savior si le tuple est un fils1 ou un fil2. j'ai essayé avec des mots clés comme "table_name", mais visiblement cela ne fonctionne pas.

    Qu'en pensez-vous?

    Par avance merci pour votre aide.

    Edit: jusqu'a présent j'ai reussi a faire ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Select id FROM Pere INNER JOIN Fils1 on Fils1.id=Pere.id
    Ainsi, je suis sur que je recupère des fils 1, (et j'ai qu'a faire pareil pour les fils 2....), mais je voudrais en fait pouvoir faire la récupération de tous les fils en une seule requete....
    merci

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 453
    Points : 18 386
    Points
    18 386
    Par défaut
    Soyez plus précis et postez un petit jeu d'essai.
    Précisez également votre SGBD.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 68
    Points : 52
    Points
    52
    Par défaut
    Bonjour et merci pour votre réponse.

    Voici mon jeu d'essai :

    table père :

    1
    2
    3
    4


    table fils1
    1
    3

    table fils2
    2
    4



    et je voudrais avoir la réponse sql suivante :

    1 fils1
    2 fils2
    3 fils1
    4 fils2


    Ainsi je peux savoir a quel genre de fils appartient mon tuple
    je travaille avec MySQL.

    Merci

  4. #4
    Membre expérimenté
    Avatar de jbrasselet
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Mars 2006
    Messages
    1 022
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 022
    Points : 1 413
    Points
    1 413
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT id, 'Fils1' FROM Pere INNER JOIN Fils1 ON Fils1.id=Pere.id
    UNION
    SELECT id, 'Fils2' FROM Pere INNER JOIN Fils2 ON Fils2.id=Pere.id
    Ca t'irait?

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 68
    Points : 52
    Points
    52
    Par défaut
    Oui mais c'est de la triche non?
    Je pensais qu'on pouvais récupérer le nom de la table à laquelle appartient le tube, mais merci pour cette réponse .

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 849
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 849
    Points : 52 975
    Points
    52 975
    Billets dans le blog
    6
    Par défaut
    Tout dépend si votre héritage est exclusif ou non !!!! En effet votre question ne précise pas le mode d'héritage...

    Lisez l'article que j'ai écrit à ce sujet : http://sqlpro.developpez.com/cours/m...tion/heritage/

    A +

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

Discussions similaires

  1. declarer nom table comme variable
    Par naouah dans le forum ASP
    Réponses: 6
    Dernier message: 29/08/2007, 17h25
  2. [SQL Server 2005]Trigger DDL -> Nom Table Modifiée
    Par Yotho dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 26/06/2007, 11h11
  3. [SQL SERVER2K] Passer Nom Table à SP
    Par Sunny dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 28/06/2006, 10h19
  4. Réponses: 2
    Dernier message: 10/02/2006, 16h09
  5. Réponses: 4
    Dernier message: 19/09/2005, 15h59

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