Select sur 2 tables avec meme champs

Résolu
fredodo13 Messages postés 89 Date d'inscription   Statut Membre Dernière intervention   -  
jee pee Messages postés 41521 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour à tous !

Quoi de mieux que de commencer ce dimanche avec un peu de php/sql ? ^^

alors mon probleme est simpe, je cherche a faire un select from sur deux tables dans la meme bdd et en cherchant les meme champs.

On va dire que mes tables se nomment gignac et ibra et que les champs que je souhaite sortir s'apellent nom, age et club

Comment je peux faire ça ?

Merci pour votre aide
A voir également:

2 réponses

jee pee Messages postés 41521 Date d'inscription   Statut Modérateur Dernière intervention   9 720
 
Salut,

Si tu veut additionner les resultats des 2 tables il faut une union

select nom, age, club from gignac
where ....
union
select nom, age, club from ibra
where ....

cdlt

        Un étranger, c'est un ami qu'on n'a pas encore rencontré.
0
fredodo13 Messages postés 89 Date d'inscription   Statut Membre Dernière intervention   3
 
Slt jee pee et merci de t'intéresser à mon pb.

J'ai une erreur
Call to a member function fetch() on a non-object in


je te mets directement la requête :


$bdd->query('SELECT * from gignac WHERE visible="y" ORDER BY dateexp LIMIT 5 UNION SELECT * from ibra WHERE visible="y" ORDER BY dateexp LIMIT 5 ');

je ressors derriere ds un tableau les noms etcs.... donc on peur oublier cette partie!
0
jee pee Messages postés 41521 Date d'inscription   Statut Modérateur Dernière intervention   9 720
 
Il faudrait ne laisser qu'un seul
ORDER BY dateexp LIMIT 5
, le dernier et donc supprimer le 1er.
0
fredodo13 Messages postés 89 Date d'inscription   Statut Membre Dernière intervention   3
 
malheuresement tjrs la meme erreure snif

$bdd->query('SELECT * from hotel UNION SELECT * from gite WHERE visible="y" ORDER BY dateexp LIMIT 5 ');
0
jee pee Messages postés 41521 Date d'inscription   Statut Modérateur Dernière intervention   9 720
 
 Si vous voulez utiliser un ORDER BY pour le résultat final de UNION, 
vous devez utiliser des parenthèses :

(SELECT a FROM nom_de_table WHERE a=10 AND B=1 ORDER BY a LIMIT 10)
UNION
(SELECT a FROM nom_de_table WHERE a=11 AND B=2 ORDER BY a LIMIT 10)
ORDER BY a;


ref : http://dev.mysql.com/doc/refman/5.0/fr/union.html
0
fredodo13 Messages postés 89 Date d'inscription   Statut Membre Dernière intervention   3
 
ceux qui donnerai dans mon cas


$reponse = $bdd->query('SELECT * from hotel WHERE visible="y" ORDER BY dateexp LIMIT 5) UNION (SELECT * from gite WHERE visible="y" ORDER BY dateexp LIMIT 5)ORDER BY dateexp';

mais bon apparemment j'ai une erreur de syntaxe cette fois :s
0
jee pee Messages postés 41521 Date d'inscription   Statut Modérateur Dernière intervention   9 720
 
query('SE
==>
query('(SE ............ ');


ce n'est que de la logique de syntaxe je n'utilise pas php (ni mysql)
0