J'ai une question sur faire une bonne sous-requête pour ce problèmeCréation sous-requête en utilisant IN
Disons que nous avons une table utilisateurs, et des liens.
users
+++++++++
id name
1 name1
2 name2
3 name3
+++++++++
links
+++++++++
id link
1 link1
2 link1
3 link1
+++++++++
Et laisse dire que j'ai une table de relation comme celui-ci
name_links
++++++++++++
uid lid
1 1,3
2 1,2,3
3 2
++++++++++++
Je sais que ce n'est pas la méthode la plus utilisée pour le faire. J'ai posté une autre question sur les suggestions sur cette méthode. Si vous avez des suggestions, voici le lien.
mysql query normal relationship table vs concatenated realtionship table
Mais en utilisant ce schéma, je ne peux pas obtenir la requête de travailler. La requête je suis venu avec est le suivant:
SELECT link
FROM links
WHERE links.id
IN
(
SELECT lid
FROM name_links
WHERE uid=1
)
Je fais cela avec la bonne syntaxe et des citations, mais je reçois qu'une seule ligne, la première ligne. Donc, par exemple, en utilisant cette même requête, je n'ai que link1 comme résultat. J'ai besoin de link1 et link3.
Cela me rend fou, je peux vraiment besoin d'aide avec cela.
Merci!
Ah je vois, merci pour deux superbes réponses –