Sql champ dans clause where ambigu

wildchildforlife Messages postés 74 Date d'inscription   Statut Membre Dernière intervention   -  
blux Messages postés 27145 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour !

C'est simple je veux selectionner et afficher tout les champs "nom_table" parmis plusieurs tables voici ma requete :

$selection_recherche = mysql_query("SELECT * FROM films, jeux, series, music WHERE nom_table = '%$recherche%' ORDER BY id DESC") or die(mysql_error());

on me dit "Champ: 'nom_table' dans where clause est ambigu"
j'ai lu que ambgu vx dir que ma sgdb ne c pas quoi prendre exactement puisque plusieurs tables comportent le meme champ, mais moi je veux qu'elle les prennent TOUTES ( celle qui comportent ce que j'ai spécifié dans le WHERE ) xD comment faire ? :s !

A voir également:

1 réponse

blux Messages postés 27145 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
Salut,

ta requête est mal conçue.

Tu veux selectionner tous les champs de toutes les tables, ce n'est pas possible sous SQL. Quand on met plusieurs tables, c'est qu'on doit faire une jointure.

Si tu as une colonne nom_table, tu dois préciser à quelle table elle est rattachée.

Si tu veux vraiment toutes les colonnes appelées nom_table tu dois faire un truc de ce genre :

SELECT nom_table from films
UNION
SELECT nom_table from jeux
UNION
SELECT nom_table from series
UNION
SELECT nom_table from series
0