Requête attributaire complexe / Jointure de tables
La requête attributaire complexe autorise une sélection sur plusieurs couches et sur un ou plusieurs attributs de ces couches. Sous MapInfo, cette requête est appelée requête SQL.
A partir du menu Sélection >Sélection SQL, une fenêtre de sélection SQL s’ouvre, il faut choisir les tables sur lesquelles s’effectuera la sélection. Les critères de sélections doivent, comme précédemment contenir les modalités de sélection, mais, en plus, contenir les critères de liens entre les tables attributaires (champs de jointure).
Attention : l’ordre des tables est très important !! La première couche inscrite dans la partie Tables, sera la couche sur laquelle sera réalisée la sélection ! C’est elle qui contient les objets géographiques de la sélection.
Donc rappelez-vous bien que dans une sélection SQL l’ordre des tables à de l’importance ; vous récupérez toujours les objets graphiques de la première table.
Exemple :
Vous disposez d’une couche ‘comm.tab’ représentant le contour des communes ; la table attributaire de cette couche ne contient que le code INSEE de chaque commune. Vous voulez sélectionner les communes de plus de 10.000 habitants. Vous disposez, d’autre part, d’une table attributaire ‘comm_attr’ (sans données graphiques) contenant le nombre d’habitants (attribut « hab ») et d’autres champs pour chaque code INSEE.
Colonnes : comm.INSEE, comm_attr.hab
Tables : comm, comm_attr (comm en premier car contient les objets graphiques)
Critères : comm.INSEE = comm_attr.INSEE And comm_attr.hab >= 10000
And :“vrai” lorsque ses deux arguments (les expressions qu'il relie) sont vrais. Un enregistrement doit donc satisfaire ces deux conditions pour être sélectionné.
Or :“vrai” lorsque l'un au moins de ses arguments (les expressions qu'il relie) ou les deux sont vrais. Un enregistrement ne doit donc satisfaire qu'une seule de ces deux conditions pour être sélectionné. Il est aussi sélectionné s'il répond aux deux conditions.
Source
Cette fiche a été réalisée avec le concours de l'Institut Eduter (Institut du Ministère de l'Agriculture pour l'enseignement agricole) et sa cellule SIG (http://www.sigea.educagri.fr).
— geomatikfab 2009/06/17 10:54