nom de table dynamique dans requete
Posté : 01 sept. 2009, 16:19
Bonjour à tous,
Je suis sur mysql 5.
Je souhaite savoir si dans une requete select (avec jointure), il est possible de composer dynamiquement le nom d'une table à partir d'une valeur de champ fournie dans la même requete.
par exemple, pour récupérer tous les champs d'une table 'users', je fais:
dans la table users, j'ai un champ nommé 'profil' qui peut prendre 3 valeurs: toto, tata, titi
toto, tata et titi correspondent aux 3 noms de 3 autres tables se trouvant dans la même bdd.
Comment récupérer les données dans la bonne table (toto, tata ou titi), en fonction de la valeur de 'profil' dans la table 'users'(toto, tata ou titi)?
Schématiquement, ça devrait donner un truc dans le genre:
Cela est il possible?
Merci pour vos réponses.
Je suis sur mysql 5.
Je souhaite savoir si dans une requete select (avec jointure), il est possible de composer dynamiquement le nom d'une table à partir d'une valeur de champ fournie dans la même requete.
par exemple, pour récupérer tous les champs d'une table 'users', je fais:
Code : Tout sélectionner
select * from userstoto, tata et titi correspondent aux 3 noms de 3 autres tables se trouvant dans la même bdd.
Comment récupérer les données dans la bonne table (toto, tata ou titi), en fonction de la valeur de 'profil' dans la table 'users'(toto, tata ou titi)?
Schématiquement, ça devrait donner un truc dans le genre:
Code : Tout sélectionner
select users.*, (nomDeTable).* FROM users, (nomDeTable) WHERE (nomDeTable) = users.profilMerci pour vos réponses.