Jointure et récupération en php

Résolu/Fermé
MouleFrite - 25 janv. 2016 à 14:54
 MouleFrite - 26 janv. 2016 à 08:20
Bonjour à tous,

Je viens vers vous pour un souci, je possède 5 tables en relations avec un ID (ide), pouvant contenir chacune plusieurs lignes pour un ide donné.

table_1, table_2, table_3, table_4, table_5

J'aimerais sélectionné dans ces 5 tables les informations relative à un ide fournie et les trier par date. mais je ne vois pas comment faire.

Je dois générer un tableau PHP récupérant toutes les informations.

Pour l'exemple j'ai un ide (1)
Je peux récupérer facilement dans une table les infos ("SELECT * FROM table_1 WHERE ide='1' ORDER BY date DESC").

mais j'aimerai la même chose mais pour les 5 tables, du coup dois-je faire 5 requête ou est-il possible de le faire en une seule de manière à ce qu'il trie les différent enregistrement associé à l'ide 1 par date descendant sur les 5 tables et récupérer la provenance de l'information

du genre :
[0] => array('id' => id en cours, 'provenance' => la table, 'date' => la date)
[1] => etc...

Ce tableau soit dans un ordre descendant par date.

D'avance merci de votre aide
A voir également:

2 réponses

jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
25 janv. 2016 à 16:21
Bonjour,


Regardes du côté des jointures.

Par exemple ( je te conseille de tester tes requêtes DIRECTEMENT dans ta BDD avant de t'en service via ton php )

En partant du principe que, comme tu le dis, tu as :

5 tables en relations avec un ID (ide)


Tu peux écrire une requête du genre :
SELECT *
FROM table1 T1
LEFT JOIN table2 T2 ON T2.ide = T1.ide
LEFT JOIN  table2 T3 ON T3.ide = T1.ide
WHERE T.ide = '1'
ORDER BY date DESC






1
Bonjour et merci de votre participation.

Votre solution est correct, toutefois je me suis diriger vers UNION

Merci pour votre participation
Bien à vous
0