Forum-webmaster
Technique - programmation => PHP / MySQL => Message commencé par: kg7201 le le 14-12-2006 a 21:52:44

Titre: requete sur 3 tables et concaténation
Posté par: kg7201 le le 14-12-2006 a 21:52:44

Bonjour,

J'ai 3 tables qui sont:
CREATE TABLE `artistes` (
`ARTISTE_IDENTIFIANT` int(10) unsigned NOT NULL auto_increment,
`ARTISTE_NOM` varchar(64) NOT NULL default '',
PRIMARY KEY (`ARTISTE_IDENTIFIANT`)
)

CREATE TABLE `boutique_produits` (
`IDENTIFIANT` int(10) unsigned NOT NULL auto_increment,
`REFERENCE` varchar(10) NOT NULL default '',
`TITRE` varchar(64) NOT NULL default '',
PRIMARY KEY (`IDENTIFIANT`),
KEY `REFERENCE` (`REFERENCE`,`TITRE`)
)

CREATE TABLE `artistes_produits` (
`ARTISTES_PRODUITS_PRODUIT` int(10) NOT NULL default '0',
`ARTISTES_PRODUITS_ARTISTE` int(10) NOT NULL default '0'
)

ARTISTES_PRODUITS_PRODUIT correspond à l'identifiant de la table boutique_produits
ARTISTES_PRODUITS_ARTISTE correspond à l'identifiant de la table artistes

Plusieurs artistes peuvent avoir une référence. J'aimerais afficher un listing des données comme ceci:
Artiste1 / Artiste 3 - Référence1
Artiste2 - Référence2

En triant les résultats par artiste et me permettant lors d'un clic sur un nom d'envoyer son nom via l'URL. J'ai essayé la requete suivant:
[CODE]"SELECT GROUP_CONCAT(DISTINCT artistes_produits.ARTISTES_PRODUITS_ARTISTE ORDER BY artistes_produits.ARTISTES_PRODUITS_ARTISTE SEPARATOR ' / '), artistes_produits.ARTISTES_PRODUITS_PRODUIT FROM artistes_produits GROUP BY artistes_produits.ARTISTES_PRODUITS_PRODUIT"[/CODE]

Mais j'ai un message d'erreur dès que j'essaie de trier par nom d'artiste, de plus je ne suis pas sur que cette requete, me permette de faire un lien pour chaque artiste et qu'il ne prenne pas la concaténation.

Quelle requete me conseillez-vous? En vous remerciant.


Forum-webmaster | Actionné par YaBB SE
© 2001-2003, YaBB SE Dev Team. Tous droits réservés.