Les requêtes permettent de sélectionner un sous-ensemble d’entités et des enregistrements de table. Toutes les expressions de requête dans ArcGIS AllSource utilisent le langage SQL (Structured Query Language) pour formuler ces spécifications de recherche.
Le générateur de requêtes permet de créer des requêtes dans de nombreuses situations, notamment les suivantes :
- Sélection des entités d’après leurs attributs dans l’outil de géotraitement Sélectionner une couche par attributs
- Paramétrage d’ensembles de définition pour des couches ou des tables autonomes
- Paramétrage de filtres d’affichage pour des couches
- Création de rapports
Composants du générateur de requêtes
Le générateur de requêtes est une interface qui vous aide à créer et à modifier des requêtes dans un format structuré. Le générateur de requêtes vous permet de créer des requêtes en mode natif en saisissant une syntaxe SQL, ou de manière interactive en sélectionnant des composants. L’écriture d’une syntaxe SQL est l’option la plus avancée et vous donne accès à toutes les fonctionnalités SQL.
Générer une requête de manière interactive
Dans le mode par défaut du générateur de requêtes, vous pouvez générer une requête en faisant des sélections dans des menus déroulants dont les options sont renseignées et préfiltrées en fonction du type de champ choisi.
Ce mode présente notamment les avantages suivants :
- Vous pouvez créer des requêtes SQL valides, quelle que soit la source de données.
- Vous pouvez générer des requêtes courantes sans connaître préalablement le langage SQL.
- Les opérateurs conditionnels sont filtrés en fonction du type de champ que vous avez choisi.
- Il est facile d'appliquer un regroupement en vue d'améliorer l'ordre de vos opérations.
Comme vous pouvez le voir dans l’image ci-dessous, le générateur de requêtes interactif comporte différents composants :
- Boutons permettant de grouper ou de dégrouper des clauses. Il est possible de cliquer sur la coche verte pour vérifier la syntaxe.
- Un bouton de bascule SQL permet de faire passer le générateur en mode SQL.
- Des listes déroulantes préformatées pour créer chaque requête de manière interactive en choisissant les champs, les opérateurs et les valeurs.
- Ajoutez et créez des clauses supplémentaires, et supprimez-les individuellement lorsqu’elles ne sont plus nécessaires.
Le mode interactif est bien adapté pour créer des requêtes avec des champs de type chaîne, numérique et date, mais les types de requêtes que vous pouvez créer sont limités. Pour écrire une requête sans restriction, utilisez plutôt le mode SQL. Vous pouvez commencer à créer une clause en mode interactif, puis cliquer sur le bouton de bascule SQL pour l’afficher dans sa syntaxe SQL native. Vous pouvez utiliser cette syntaxe comme base pour préciser la clause à votre convenance. À noter que, si la syntaxe SQL que vous ajoutez n’est pas prise en charge par le mode interactif, vous risquez de ne plus pouvoir y revenir ensuite.
Pour en savoir plus sur l’utilisation du mode interactif, reportez-vous à la rubrique Créer et modifier des requêtes.
Créer une requête en écrivant une syntaxe SQL
Si vous maîtrisez bien la syntaxe SQL, vous préférerez peut-être créer et gérer les requêtes en mode SQL. Cliquez sur le bouton de bascule SQL pour passer en mode SQL. Le mode SQL présent notamment les avantages suivants :
- Vous pouvez écrire des requêtes sans restriction.
- Vous pouvez utiliser le remplissage automatique. Au fur et à mesure de votre saisie, une invite présentant uniquement les mots-clés et les opérateurs pris en charge par votre source de données apparaît.
- Eléments avec code couleur qui vous aident à vérifier visuellement ou modifier votre requête.
Le mode SQL du générateur de requêtes comporte les composants suivants :
- Un bouton de bascule SQL permet d’activer le mode interactif.
- L’éditeur de code colore les mots-clés et les chaînes pour faciliter la recherche du texte dans votre requête SQL. La clause WHERE est prise en charge.
- Il est possible de cliquer sur la coche verte pour vérifier la syntaxe.
En mode SQL, il est impératif d’employer la syntaxe SQL correcte dans l’élaboration d’une requête de sorte que la source de données détermine exactement quels enregistrements renvoyer. Il n’est pas nécessaire de délimiter les champs avec des caractères spéciaux. Pour plus d’informations sur la rédaction de requêtes SQL, consultez le guide de référence SQL.
Vous avez un commentaire à formuler concernant cette rubrique ?