Jointure avec une autre requête
Bonjour à tous,
Je débute presque totalement en SQL (j'en ai fais un peu à l'école il y a plus de 10 ans ;) ) et classiquement je suis plus VBA, donc ma question est peut être toute bête mais je ne trouve pas la solution.
Voila j'ai un projet dans lequel j'ai écris une requête assez balèze (enfin pour mon niveau :D ) qui me donne comme résultat 2 colonnes A et B avec plusieurs A qui peuvent lié à un même B.
A |
B |
A1 |
B1 |
A2 |
B1 |
A3 |
B2 |
A4 |
B1 |
A5 |
B1 |
A6 |
B3 |
A7 |
B2 |
A8 |
B1 |
A9 |
B4 |
Ensuite j'ai besoin de faire un autre requête qui me recherche des B et auxquels je voudrait lié les A que j'ai trouvé. J'ai fais une truc du genre :
Code:
1 2 3 4
| select *
from base_B
join (select A, B
from base_A) rA on B = rA.B |
Donc est-ce que j'ai le droit de faire ça ? Et après dans l'éxécution comment cela se comporte-t-il ? Le select du join est recalculé à chaque "ligne" trouvé par le select * ou est-ce qu'il est calculé une fois au départ et après il se fait une jointure comme cela se passerait avec une autre table ?
Voilà j'ai essayé de faire simple et clair j'espère que ça le sera.
Merci d'avance pour vos coups de main.