par
manuscle » 02 févr. 2006, 17:04
La réponse de cyrano est bonne, j'ai refait la requete et maintenant ça fonctionne correctement! Par contre il ne faut pas mettre deux fois "LEFT JOIN maj AS a" car sinon il renvoie cette erreur : "Not unique table/alias : 'a' ", j'ai donc fait la requete suivante :
Code : Tout sélectionner
$select = "SELECT a.maj_id, DATE_FORMAT(a.maj_date,'%Y%m%d') AS maj_datefr,
a.maj_fichier,
a.maj_status,
b.fab_nom,
b.fab_rep,
c.type_nom,
c.type_cat ";
$select .= "FROM fabricant AS b, type AS c ";
$select .= "LEFT JOIN maj AS a
ON a.fab_id = b.fab_id
LEFT JOIN maj
ON a.type_id = c.type_id
LEFT JOIN rel_abo_client AS d
ON d.abo_id = c.abo_id ";
$select .= "WHERE a.maj_id IS NOT NULL ";
$select .= "AND d.client_id = '$id'";
Je n'ai pas vérifié si ça marche aussi avec les parenthèses....
Merci encore pour votre aide! ça faisait longtemps que je n'étais pas venu sur phpFrance, mais ça a l'air toujours aussi sympa!

La réponse de cyrano est bonne, j'ai refait la requete et maintenant ça fonctionne correctement! Par contre il ne faut pas mettre deux fois "LEFT JOIN maj AS a" car sinon il renvoie cette erreur : "Not unique table/alias : 'a' ", j'ai donc fait la requete suivante :
[code]$select = "SELECT a.maj_id, DATE_FORMAT(a.maj_date,'%Y%m%d') AS maj_datefr,
a.maj_fichier,
a.maj_status,
b.fab_nom,
b.fab_rep,
c.type_nom,
c.type_cat ";
$select .= "FROM fabricant AS b, type AS c ";
$select .= "LEFT JOIN maj AS a
ON a.fab_id = b.fab_id
LEFT JOIN maj
ON a.type_id = c.type_id
LEFT JOIN rel_abo_client AS d
ON d.abo_id = c.abo_id ";
$select .= "WHERE a.maj_id IS NOT NULL ";
$select .= "AND d.client_id = '$id'";[/code]
Je n'ai pas vérifié si ça marche aussi avec les parenthèses....
Merci encore pour votre aide! ça faisait longtemps que je n'étais pas venu sur phpFrance, mais ça a l'air toujours aussi sympa! :wink: