Sous requête dans le select

Fermé
Vinzzz33 - 24 juin 2015 à 12:17
DasSium95 Messages postés 672 Date d'inscription mardi 30 mars 2010 Statut Membre Dernière intervention 13 avril 2016 - 24 juin 2015 à 15:05
Bonjour à toutes et à tous,

J'ai une question qui est peut être toute bête, mais je n'arrive pas à trouver d'infos sur le sujet.

J'ai une requête faite sur sql server qui se compose en gros de cette manière:

Select
(Select Champ1 from Table1
where NumDossier = X.Dossier) as Nom1,
NumDossier as DossierOK,
(Select Champ2 from Table2
where ID = X.ID) as Nom2,
(Select Champ3 from Table3
where Ndossier = X.Dossier) as Nom3,
(Select Champ4 from Table3
where Ndossier = X.Dossier) as Nom4,
(Select Champ5 from Table3
where Ndossier = X.Dossier) as Nom5,
From Table4 X
where datedebut >= '01/01/2015' and datefin <= '31/01/2015'
order by Nom1

J'aimerai comprendre le fait de mettre une première instruction "select", suivis directement d'un " (select X from ...)" ?

Je vous remercie d'avance et désolé si je ne suis pas clair :S

Vinzzz33


1 réponse

DasSium95 Messages postés 672 Date d'inscription mardi 30 mars 2010 Statut Membre Dernière intervention 13 avril 2016 133
24 juin 2015 à 15:05
Bonjour,

Le fait de faire suivre ton select par un autre select permet de récupérer une donnée depuis une autre table et de le définir comme champ select pour ton premier select.

En gros:
> pour Nom1 tu récupère la valeur de Champ1 dans la Table1 dont le NumDossier est égal au NumDossier dont datedebut >= '01/01/2015' and datefin <= '31/01/2015' de ta table4.

Et ainsi de suite pour chaque membre de ton select.
0