ce n'est pas parce qu'un SELECT * est fonctionnel qu'il est judicieux ...
je rejoins l'avis de macgawel là-dessus : si tu n'utilises qu'un seul champ (ou 2) ça ne sert à rien de rapatrier tous les champs. Et faire SELECT champ1, champ2 FROM ... est tout aussi valable que SELECT * FROM, à la différence près que c'est moins gourmand en ressources (et, selon les schémas des tables dans la base, ça évite aussi de rapatrier n'importe quoi).
pour la jointure : pourquoi ne pas faire, au lieu de :
Code :
- select * from type_matiere_premiere,matiere_premiere where type_matiere_premiere.code_mat_pre=matiere_premiere.code_mat_pre
|
ceci :
Code :
- SELECT
- tmp.champ1,
- tmp.champ2
- FROM
- type_matiere_premiere tmp
- LEFT JOIN
- matiere_premiere mp
- ON
- tmp.code_mat_pre = mp.code_mat_pre
- GROUP BY
- tmp.champ1;
|
par exemple, après reste à appliquer un critère dans le Where, s'il le faut, ou bien un order by, voire un limit s'il y a besoin. Et, bien entendu, déterminer les X champs à rapatrier.
dans ton 2nd while, tu génères une ligne à chaque nouveau passage, c'est voulu ainsi ?
---------------
NewsletTux - outil de mailing list en PHP MySQL