Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Requêtes
Requêtes Forum d'entraide sur les requêtes MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 15/03/2011, 10h28   #1
Membre du Club
 
Avatar de tom06440
 
Homme Thomas HERISSON
Développeur Web
Inscription : novembre 2004
Messages : 150
Détails du profil
Informations personnelles :
Nom : Homme Thomas HERISSON
Âge : 28
Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2004
Messages : 150
Points : 67
Points : 67
Envoyer un message via MSN à tom06440 Envoyer un message via Skype™ à tom06440
Par défaut Requête avec LEFT JOIN

Bonjour à tous

J'ai un soucis que j'ai du mal à résoudre.
J'ai voulu mettre en place la requête suivante, mais le comparateur IN ne fonctionne apparemment pas avec left join ...

Code :
1
2
3
4
5
 
SELECT op.*
FROM orders_products op
LEFT JOIN catproducties c ON ( op.products_id IN c.list_products )
[...]
en fait la colonne c.list_products contient plusieurs clés séparées par des |
et je dois faire en sorte de ne trouver que les lignes orders_products qui ont leur id présent dans la colonne c.list_products ...

Merci d'avance de votre aide
tom06440 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/03/2011, 10h33   #2
Modérateur
 
Avatar de Golgotha
 
Homme cédric
Développeur informatique
Inscription : août 2007
Messages : 732
Détails du profil
Informations personnelles :
Nom : Homme cédric
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : août 2007
Messages : 732
Points : 1 573
Points : 1 573
Envoyer un message via Skype™ à Golgotha
Bonjour,

C'est peut être un select qu'il faut faire après le IN ?

Code :
LEFT JOIN catproducties c ON ( op.products_id IN (SELECT c.list_products FROM catproducties c WHERE..))
la je suis pas sûr... mais à tester.
__________________
modérateur webmasters - développements web & php
faq jQuery - règles du forum - faqs web
mon espace perso
Venez participez au deuxième defi Web !
Golgotha est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/03/2011, 10h40   #3
Membre du Club
 
Avatar de tom06440
 
Homme Thomas HERISSON
Développeur Web
Inscription : novembre 2004
Messages : 150
Détails du profil
Informations personnelles :
Nom : Homme Thomas HERISSON
Âge : 28
Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2004
Messages : 150
Points : 67
Points : 67
Envoyer un message via MSN à tom06440 Envoyer un message via Skype™ à tom06440
Ouaww quelle rapidité !
En plus réponse juste, je n'y avait pas pensé à placer un select dans la condition, et il s'avère que cela fonctionne

Vraiment un grand merci
tom06440 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 15/03/2011, 10h50   #4
Membre du Club
 
Avatar de tom06440
 
Homme Thomas HERISSON
Développeur Web
Inscription : novembre 2004
Messages : 150
Détails du profil
Informations personnelles :
Nom : Homme Thomas HERISSON
Âge : 28
Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2004
Messages : 150
Points : 67
Points : 67
Envoyer un message via MSN à tom06440 Envoyer un message via Skype™ à tom06440
Juste une dernière question, est-ce que je peux ajouter le caractère | autour du résultat de ma sous-requête ?

Edit : pas autour du résultat, mais autour de la valeur recherchée
tom06440 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/03/2011, 11h01   #5
Membre du Club
 
Avatar de tom06440
 
Homme Thomas HERISSON
Développeur Web
Inscription : novembre 2004
Messages : 150
Détails du profil
Informations personnelles :
Nom : Homme Thomas HERISSON
Âge : 28
Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2004
Messages : 150
Points : 67
Points : 67
Envoyer un message via MSN à tom06440 Envoyer un message via Skype™ à tom06440
Bon bah c'est résolu, avec la fonction : concat( '|', op.products_id, '|' )

Merci de votre aide
tom06440 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/03/2011, 11h02   #6
Modérateur
 
Avatar de Golgotha
 
Homme cédric
Développeur informatique
Inscription : août 2007
Messages : 732
Détails du profil
Informations personnelles :
Nom : Homme cédric
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : août 2007
Messages : 732
Points : 1 573
Points : 1 573
Envoyer un message via Skype™ à Golgotha
Normalement oui, avec concat()

Code :
LEFT JOIN catproducties c ON ( op.products_id IN (concat('|',SELECT c.list_products FROM catproducties c WHERE..),'|'))
__________________
modérateur webmasters - développements web & php
faq jQuery - règles du forum - faqs web
mon espace perso
Venez participez au deuxième defi Web !
Golgotha est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h16.


 
 
 
 
Partenaires

Hébergement Web