Version complète: sur le forum Webmaster Hub : probleme sous-requete pourtant simple
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > SQL
tim4info
bonjour a tous !
je suis confronté à un problème qui ne me parait aps tellement compliqué mais impossible de le résoudre !

je voudrai connaitre l'auteur d'un sujet à partir d'un id de message(une réponse en fait).

pour cela, je pensais recuperer le sujet (place_topics) dans la table message (place_posts) à l'aide de l'id du message (post_id)...
et ensuite a partir de l'id du sujet (topic_id), trouver l'auteur de ce sujet(topic_poster).

voici ma requete

SELECT topic_poster
FROM place_topics
WHERE topic_id IN (SELECT topic_id
FROM place_posts
WHERE post_id=133)

a l'execution de cette requete un probleme de syntaxe apparait.
je n'ai pas d'erreur de noms de champs ou de tables.

egalement, lorsque j'exécute les deux parties de ma requete une à une je n'ai aucun probleme à l'execution.

voila, merci d'avance pour votre aide !
captain_torche
Il y a de fortes chances que ton serveur SQL ne supporte pas les requêtes imbriquées.
Il va falloir utiliser une jointure.
Bourinho
Salut, je crois qu'il y a un moyen de contourner ce problème (je crois vaguement me souvenir que le IN m'avait déjà posé des soucis...)

CODE
SELECT place_topics.topic_poster
FROM place_topics
WHERE EXISTS (
SELECT 1 FROM place_posts
WHERE place_topics.topic_id = place_posts.topic_id
AND place_posts.post_id=133)


En espérant que cela corresponde à ce que tu recherches...
tim4info
Je vous remercie de votre aide !!
La solution avec la clause "exists" ne fonctionne pas, j'ai opté pour deux requetes l'une après l'autre.
Je voulais faire ça bien, ce sera pour une prochaine fois...

Merci encore ! a_thumbsup_20.gif
Spidetra
SQL
SELECT DISTINCT t.topic_poster
FROM place_topics t INNER JOIN place_posts p ON t.topic_id = p.topic_id
WHERE p.post_id = 133
tim4info
Je suis revenu consulté au cas ou et miracle, la solution !!
Je n'ai jamais employé ce genre de jointure, mais je vais de ce pas m'y mettre !

Mille mercis à Spidetra pour la solution et à tous ceux qui ont participer à mon post.

Longue vie à www.webmaster-hub.com !!!
Spidetra
http://dev.mysql.com/doc/refman/5.0/fr/join.html
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.