Bonjour à tous.

J'ai besoin de faire un SELECT étrange, et je ne sais pas si c'est possible.


Je m'explique : J'ai une table Prop qui a 1 id, 1 nom et 1 champ val.
Ce champ val est un varchar qui contient en fait le nom de la colonne que je devrai récupérer dans une autre table Contenu.

Exemple :
Dans ma table Prop, j'ai :
id - nom - type
1 : Chaîne : varcharval
2 : Texte : textval

Et ma table contenu est structuré de la sorte :
id - ridProp - varcharval - textval
1 : 1 : Bonjour : NULL
2 : 1 : Hello : NULL
3 : 2 : NULL : Texte Multiligne

etc etc...

Et donc, vous aurez compris ce que je veux faire, 1 SELECT qui me sort directement la bonne colonne, tous renommé avec 1 AS avec 1 nom de mon choix.
Je pensais à 1 truc du genre :
SELECT contenu.id, (prop.type) AS valeur FROM prop,contenu WHERE contenu.ridProp=prop.id

Mais cette requêt ne marche pas, c'est donc l'objet de mon post...

Merci de votre aide !


Je vous ai même crée un script de création de ces 2 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
CREATE TABLE prop (
 id int not null auto_increment primary key,
 nom varchar(32),
 type varchar(32)
);
INSERT INTO prop VALUES ('','Chaîne','varcharval');
INSERT INTO prop VALUES ('','Texte','textval');
CREATE TABLE contenu (
 id int not null auto_increment primary key,
 ridProp int,
 varcharval varchar(32),
 textval text
);
INSERT INTO contenu VALUES ('',1,'Bonjour','');
INSERT INTO contenu VALUES ('',1,'Hello','');
INSERT INTO contenu VALUES ('',2,'','Texte MultiLigne !!!');