[php/mysql] requête sql avec Jointure
bazzouz
Messages postés
363
Date d'inscription
Statut
Membre
Dernière intervention
-
bazzouz Messages postés 363 Date d'inscription Statut Membre Dernière intervention -
bazzouz Messages postés 363 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai trouvé la requête ci dessous dans un script php : est ce que on programme ce type de requête à la main ou bien ya un outil pour faciliter l'écriture des requête et surtout les jointures ???
$req="SELECT id_membre AS id, id_membre AS id1, pseudo_membre AS tier1, id_membre AS id2,pseudo_membre AS tier2, avator_membre AS image, dateinscription_membre AS date, 'membre' AS type FROM membre
UNION
SELECT id_media AS id, media.id_membre as id1, pseudo_membre AS tier1, id_media as id2,titre_media AS tier2 , avator_membre AS image, date_media AS date, 'media' AS
type FROM media
INNER JOIN membre ON membre.id_membre = media.id_membre
UNION
SELECT id_article AS id, article.id_membre as id1, pseudo_membre AS tier1, id_article as id2, titre_article AS tier2, avator_membre AS image, date_article AS date, 'article' AS
type FROM article
INNER JOIN membre ON membre.id_membre = article.id_membre
union
SELECT id_commentaire_media AS id, m1.id_membre as id1 ,m1.pseudo_membre AS tier1, m2.id_membre as id2,m2.pseudo_membre AS tier2, m1.avator_membre AS image, date_commentaire_media AS date, 'commMedia' AS
type FROM commentaire_media
INNER JOIN media ON media.id_media = commentaire_media.id_media
INNER JOIN membre as m1 ON m1.id_membre = commentaire_media.id_media
INNER JOIN membre as m2 ON m2.id_membre = media.id_membre
union
SELECT id_commentaire_article AS id, m1.id_membre as id1,m1.pseudo_membre AS tier1,m2.id_membre as id2, m2.pseudo_membre AS tier2, m1.avator_membre AS image, date_commentaire_article AS date, 'commArticle' AS
type FROM commentaire_article
INNER JOIN article ON article.id_article = commentaire_article.id_article
INNER JOIN membre as m1 ON m1.id_membre = commentaire_article.id_membre
INNER JOIN membre as m2 ON m2.id_membre = article.id_membre
union
SELECT id_commentaire_membre AS id,m2.id_membre as id2, m2.pseudo_membre AS tier2, m1.id_membre as id1,m1.pseudo_membre AS tier1, m2.avator_membre AS image, c.date_commentaire_membre AS date, 'commMembre' AS type FROM membre as m1
INNER JOIN commentaire_membre as c ON m1.id_membre = c.id_commentateur
Inner join membre as m2 on m2.id_membre=c.id_membre
union
SELECT m1.id_membre AS id, m1.id_membre as id1,m1.pseudo_membre AS tier1,m2.id_membre as id2 ,m2.pseudo_membre AS tier2, m1.avator_membre AS image, r.date_ajout AS date, 'relationMembre' AS
type FROM membre as m1
INNER JOIN relation_membre as r ON m1.id_membre = r.id_amis
Inner join membre as m2 on m2.id_membre=r.id_membre
order by date DESC limit 0, 6";
j'ai trouvé la requête ci dessous dans un script php : est ce que on programme ce type de requête à la main ou bien ya un outil pour faciliter l'écriture des requête et surtout les jointures ???
$req="SELECT id_membre AS id, id_membre AS id1, pseudo_membre AS tier1, id_membre AS id2,pseudo_membre AS tier2, avator_membre AS image, dateinscription_membre AS date, 'membre' AS type FROM membre
UNION
SELECT id_media AS id, media.id_membre as id1, pseudo_membre AS tier1, id_media as id2,titre_media AS tier2 , avator_membre AS image, date_media AS date, 'media' AS
type FROM media
INNER JOIN membre ON membre.id_membre = media.id_membre
UNION
SELECT id_article AS id, article.id_membre as id1, pseudo_membre AS tier1, id_article as id2, titre_article AS tier2, avator_membre AS image, date_article AS date, 'article' AS
type FROM article
INNER JOIN membre ON membre.id_membre = article.id_membre
union
SELECT id_commentaire_media AS id, m1.id_membre as id1 ,m1.pseudo_membre AS tier1, m2.id_membre as id2,m2.pseudo_membre AS tier2, m1.avator_membre AS image, date_commentaire_media AS date, 'commMedia' AS
type FROM commentaire_media
INNER JOIN media ON media.id_media = commentaire_media.id_media
INNER JOIN membre as m1 ON m1.id_membre = commentaire_media.id_media
INNER JOIN membre as m2 ON m2.id_membre = media.id_membre
union
SELECT id_commentaire_article AS id, m1.id_membre as id1,m1.pseudo_membre AS tier1,m2.id_membre as id2, m2.pseudo_membre AS tier2, m1.avator_membre AS image, date_commentaire_article AS date, 'commArticle' AS
type FROM commentaire_article
INNER JOIN article ON article.id_article = commentaire_article.id_article
INNER JOIN membre as m1 ON m1.id_membre = commentaire_article.id_membre
INNER JOIN membre as m2 ON m2.id_membre = article.id_membre
union
SELECT id_commentaire_membre AS id,m2.id_membre as id2, m2.pseudo_membre AS tier2, m1.id_membre as id1,m1.pseudo_membre AS tier1, m2.avator_membre AS image, c.date_commentaire_membre AS date, 'commMembre' AS type FROM membre as m1
INNER JOIN commentaire_membre as c ON m1.id_membre = c.id_commentateur
Inner join membre as m2 on m2.id_membre=c.id_membre
union
SELECT m1.id_membre AS id, m1.id_membre as id1,m1.pseudo_membre AS tier1,m2.id_membre as id2 ,m2.pseudo_membre AS tier2, m1.avator_membre AS image, r.date_ajout AS date, 'relationMembre' AS
type FROM membre as m1
INNER JOIN relation_membre as r ON m1.id_membre = r.id_amis
Inner join membre as m2 on m2.id_membre=r.id_membre
order by date DESC limit 0, 6";
A voir également:
- [php/mysql] requête sql avec Jointure
- Easy php - Télécharger - Divers Web & Internet
- Mysql community server - Télécharger - Bases de données
- Expert php pinterest - Télécharger - Langages
- Logiciel sql - Télécharger - Bases de données
- Sql (+) - Forum Programmation
4 réponses
C'est juste une requête ca???? :O
Je crois que c'est plusieurs requêtes qui ensemble...donc au lieu d'en faire plusieurs une a la fois...le gars doit s'avoir si...pourquoi pas tous ensemble... Enfin, tu devrais essayer de les séparé et de d'y retrouver^^
Je crois que c'est plusieurs requêtes qui ensemble...donc au lieu d'en faire plusieurs une a la fois...le gars doit s'avoir si...pourquoi pas tous ensemble... Enfin, tu devrais essayer de les séparé et de d'y retrouver^^
Ce que je voulais savoir, est ce que y a t'il un moyen plus facile pour l'écriture des jointures via un outil comme par exemple celui de access .... ou ce type de requête ne peut être programmer que à la main ...
Merci
Merci
Slt
tu peux bel et bien utiliser un outil hyper puissant pour réaliser cet type de requete toute fois tu disposes du meilleur outil au monde pour le faire à savoir un cerveau.
car même si on met à ta disposition un outil de ce genre et si tu n'as pas la logique du langage et ses spécificités tu n'y arriveras pas.
dit toi que ceux qui utilisent efficacement ces outils dont bel et bien capable d'ecrire ces requete à la main. car ils connaissent ce qu'ils font.
cdlt.
;-)
tu peux bel et bien utiliser un outil hyper puissant pour réaliser cet type de requete toute fois tu disposes du meilleur outil au monde pour le faire à savoir un cerveau.
car même si on met à ta disposition un outil de ce genre et si tu n'as pas la logique du langage et ses spécificités tu n'y arriveras pas.
dit toi que ceux qui utilisent efficacement ces outils dont bel et bien capable d'ecrire ces requete à la main. car ils connaissent ce qu'ils font.
cdlt.
;-)