Joindre des tables [résolu] [mysql] - PHP - Programmation
Marsh Posté le 22-03-2003 à 11:25:32
select ID,Titre,Date,'tableA' from tableA
union
select ID,Titre,Date,'tableB' from tableB
order by date
quelque chose comme ca ...
Marsh Posté le 22-03-2003 à 11:37:33
après une petite verif, union ne fonctionne qu'à partir de mysql 4 et kom j'ai un serveur de merde, je n'ai que mysql 3.2 dessus...
Marsh Posté le 22-03-2003 à 11:49:49
tu fais deux requetes, tu colles les resultats ds un tableau, tu trie le tableau et voila ...
Marsh Posté le 22-03-2003 à 11:51:07
ah wé, j'vais voir
sinon je regardais comment émuler la fonction union et g trouvé ça :
SELECT IFNULL(beta_tests.ID, beta_previews.ID) AS ID, IFNULL(beta_tests.titre, beta_previews.titre) AS titre
FROM _dummy AS D
LEFT JOIN beta_tests ON (D.num = 0)
LEFT JOIN beta_previews ON (D.num = 1)
WHERE D.num < 2
ça marche, mais çe ne me dit pas la différence entre la table preview et test, alors je vais essayer ta méthode
Marsh Posté le 22-03-2003 à 11:52:54
C'est ce que je cherchais
Si, tu sais de quelle table vient l'info, en fonction de la valeur de D.num
Marsh Posté le 22-03-2003 à 11:55:14
j'vais essayer de ce pas
Marsh Posté le 22-03-2003 à 11:57:35
j'ai testé et ça marche
merci les gars !
Marsh Posté le 22-03-2003 à 01:47:58
Pour afficher la une de ma page d'accueil, je dois mixer mes tables contenant les infos pour les previews et les tests.
Les tables sont sous le format (simplifié -sachant que les deux tables ne comportent pas le même nombre de colonnes, bien entendu) :
tests :
ID
Titre
Date
previews :
ID
Titre
Date
Je voudrais pouvoir mixer les deux tables sur ces éléments-là afin de pouvoir sélectionner les 4 articles les plus récents. Bien entendu, il faut que le type de la table soit conservé (pour savoir s'il faudra ensuite faire un lien vers le progamme de tests ou de previews). Quelle est la méthode la moins gourmande en ressource pour y arriver ?
Message édité par monsieur tomate le 22-03-2003 à 11:57:47
---------------
HardGamers.org