Requete 2 tables

Jo Online
WRInaute discret
WRInaute discret
 
Messages: 110
Inscription: 5 Avr 2005

Requete 2 tables

Message le Dim Nov 20, 2005 15:35

Bonjour à tous !

Voila petit probleme je travaille avec php, je veux effectuer cette requete:

SELECT table1.champs1 FROM table1,table2 WHERE table2.champs1 LIKE '%'+table1.champs1+'%'

Bien sur cela ne marche pas, pourtant ca doit etre tout con, mais surement une erreur de syntaxe vers le LIKE (j'ai déja tenté le coup du point et du & , et sans les guillemets => marche pas non plus). :roll:

Merci d'avance pour vos réponses !

petit-ourson
WRInaute impliqué
WRInaute impliqué
 
Messages: 855
Inscription: 31 Mai 2004

Message le Dim Nov 20, 2005 15:54

Avec la fonction CONCAT(), ça marchera mieux ...

Jo Online
WRInaute discret
WRInaute discret
 
Messages: 110
Inscription: 5 Avr 2005

Message le Dim Nov 20, 2005 16:06

Merci pour ta réponse.
Peux-tu me l'écrire s'il te plait car je vois pas du tout.

Merci d'avance. :wink:

Jo Online
WRInaute discret
WRInaute discret
 
Messages: 110
Inscription: 5 Avr 2005

Message le Dim Nov 20, 2005 16:35

Comme ça j'ai pas d'erreur mysql mais aucun résultat :( :

SELECT * FROM table1,table2 WHERE CONCAT(table2.champs1,table1.champs1) = table1.champs1

Quelqu'un voit-il?

Merci d'avance


phpmikedu83
WRInaute passionné
WRInaute passionné
 
Messages: 1281
Inscription: 6 Aoû 2005

Message le Dim Nov 20, 2005 18:19

Pour faire ta requête sur tes 2 tables, il faut très probablement utiliser un INNER JOIN, encore faudrait-il savoir où tu veux en venir...

Jo Online
WRInaute discret
WRInaute discret
 
Messages: 110
Inscription: 5 Avr 2005

Message le Dim Nov 20, 2005 18:28

Alors je vais expliquer ca clairement 8) :

. Il n'y a que 2 champs concernés, donc 1 champs pour chaque table.

. table1.champs1 contient => 'tata' (1 enregistrement)

. table2.champs1 contient => 'tutu, tata, toto' (1 enregistrement)

.Je veux sélectionner un enregistrement de la table1, que si sa valeur(ou plutot sa chaine de caractères) et présente dans la table2.

Donc dans le cas présent l'enregistrement 'tata' doit etre selectionner, car la chaine est presente dans un enregistrement de table2.champs1

Voilà, ca me semble clair comme ca,
Merci pour vos réponse,

c'est je pense pas très compliqué mais la syntaxe doit m'échapper.

Jo Online
WRInaute discret
WRInaute discret
 
Messages: 110
Inscription: 5 Avr 2005

Message le Dim Nov 20, 2005 19:32

Probleme résolu !

Merci a vous tous!

J'avais pas compris concat dans le bon sens lol. :wink:

petit-ourson
WRInaute impliqué
WRInaute impliqué
 
Messages: 855
Inscription: 31 Mai 2004

Message le Dim Nov 20, 2005 23:47

J'espère que tes tables ne sont pas tro pgrosse quand même car ca va faire mal pour la base de données. Je sais pas si tu te rend compte à quoi ca correspond de faire une telle requete en nombre de ligne retournée.


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités