la y'a pour alimenter plusieur, mais pas interroge, je ne savais pas ke ct la meme chose...guslinux a dit:=> PHP debutant !!
ok merci bcp!!!niafron a dit:pas oblige le inner join
entre autre pour la gestion avec les foreign key
SELECT * FROM table1, table2 WHERE table1.PK_ID = table2.FK_ID
niafron a dit:pas oblige le inner join
entre autre pour la gestion avec les foreign key
SELECT * FROM table1, table2 WHERE table1.PK_ID = table2.FK_ID
Au contraire, INNER permet beaucoup plus qu'une simple clause where.TITM4v3rick a dit:niafron a dit:pas oblige le inner join
entre autre pour la gestion avec les foreign key
SELECT * FROM table1, table2 WHERE table1.PK_ID = table2.FK_ID
Clair
A priori, pour les foreign key dans MySQL, il est clairement recommandé de passer par une jointure...niafron a dit:pas oblige le inner join
entre autre pour la gestion avec les foreign key
SELECT * FROM table1, table2 WHERE table1.PK_ID = table2.FK_ID
avec un peu de rigueur ds la programmation ben tu c la gere comme un grand la FKSUEd a dit:A priori, pour les foreign key dans MySQL, il est clairement recommandé de passer par une jointure...niafron a dit:pas oblige le inner join
entre autre pour la gestion avec les foreign key
SELECT * FROM table1, table2 WHERE table1.PK_ID = table2.FK_ID
Exemple :
SELECT t1.xxx, t2.yyy from t1 left join t2 on t1.id = t2.id where t1.xxx = 'zzz';
lol et si on veut pas kelle apparaisse cette ligne ki nest pas reprise ds les 2 tables ( oui cfr Foreign Key les gars ) ben le inner join on est bien embete apresAGain a dit:Au contraire, INNER permet beaucoup plus qu'une simple clause where.TITM4v3rick a dit:niafron a dit:pas oblige le inner join
entre autre pour la gestion avec les foreign key
SELECT * FROM table1, table2 WHERE table1.PK_ID = table2.FK_ID
Clair
Et que se passe-t-il quand la clé n'existe pas dans la TABLE2, oups l'info n'apparait pas.
Une simple jointure avec la clause where est faite uniquement pour les liaisons plus que simple.
Autant travaillé directement correctement qu'avec des bidouillages cochons.
Pour moi, ca reste une méthode non recommandableniafron a dit:avec un peu de rigueur ds la programmation ben tu c la gere comme un grand la FK
TITM4v3rick a dit:Fnac -> SQL "Frédéric Brouard"
Justement, avec INNER JOIN, seul les champs égal apparaîtront.niafron a dit:lol et si on veut pas kelle apparaisse cette ligne ki nest pas reprise ds les 2 tables ( oui cfr Foreign Key les gars ) ben le inner join on est bien embete apres
oups g confondu les jointureAGain a dit:Justement, avec INNER JOIN, seul les champs égal apparaîtront.niafron a dit:lol et si on veut pas kelle apparaisse cette ligne ki nest pas reprise ds les 2 tables ( oui cfr Foreign Key les gars ) ben le inner join on est bien embete apres
Avec LEFT JOIN tous les champs de la première table apparaîtront => Tres pratique quand on désire connaître les nouveaux enregistrement en comparant deux table (une petite clause WHERE qui selectionne uniquement les champs null dans la cle de comparaison de la deuxième table).
Avec RIGHT JOIN tous les champs de la première table apparaîtront => Idem que l'exemple précedent, sauf qu'on connaitra les champs qu'il faut supprimer.
Au contraire, INNER permet beaucoup plus qu'une simple clause where.
Et que se passe-t-il quand la clé n'existe pas dans la TABLE2, oups l'info n'apparait pas.
Ouais... une VUE c'est plus rapide et tu peux l'utiliser comme une table... donc faire des requêtes dessus par la suite... :wink:[J-J a dit:]Le plus simple est de créer un vue (et pour rester assez propre)
CREATE VIEW machin
AS
...
Il y a plus ou moins 5 tables imbriquées avec des jolis sommes et des moyennes avec un tas de joli comparaison. Et la seul solution est d'utiliser les JOIN .
:shock:Qu'importe la vitesse entre JOIN et WHERE, JOIN est juste plus malléable (parametrablee) que WHERE (Left, right, et inner). De plus, si tu as plusieurs condition dans ton where, tes comparaisons de clé seront plus facile (évidente) qu'avec un where
tout a fait d accord ( de mon cote c avec des condition de jointure que je travaille le plus souvent )Il est plus facile de programmer (par faineantise) toujours de la même façon pour s'y retrouver plus facilement.
je comprend mais ca si un pgm code comme un porc sans une ligne de commentaire ou de clarete ds ke code ben ca fo flageler le codeurImagine (c'est du vécu et c'est chiant) que tu dois restructurer les données d'un site et que dans les commandes SQL tu tombes une fois sur un where avec les champs primaires et de temps en temps des JOIN. T'as envie de balancer l'ecran par la fenetre.