Construire des requêtes

Le principe de ces exercices est de construire des requêtes avec Open Base, en utilisant le mode Ebauche, puis à faire ces exercices directement en SQL.

Ainsi l'exercice précédent est proposé ici (1.1). Vous pouvez bien sûr vous aider des requêtes SQL fabriquées par Open Base à partir de vos ébauches. Notez qu'il ne faut pas mettre de guillemets autour des noms des tables, comme le fait Open Base.

Les requêtes simples de sélection

Il s'agit ici de continuer à travailler les requêtes de base, sur l'exemple du club sportif. Pour chaque exercice, construisez en mode Ebauche la requête dans Open Base (en vous aidant du résultat attendu affiché), puis formulez la en SQL.

Vous pouvez télécharger à nouveau la base de données ici. Vous avez remarqué que, dès qu'une requête a besoin de plus d'une table, il faut ajouter un lien de jointure entre les tables. Comme c'est toujours le même lien entre deux tables, il est possible de le poser une fois pour toutes.

Avant de passer aux exercices, sélectionnez donc l'outil Relations dans Open Office et ajoutez les relations entre les tables. N'oubliez pas d'enregistrer la base après cette opération. Vous n'aurez plus à ajouter les liens de jointure dans les requêtes prenant en compte plusieurs tables.

Les calculs dans les requêtes

Le langage SQL permet de faire des calculs à l'intérieur des requêtes.

Il peut s'agir de calculer de nouveaux attributs non présents dans la base (par exemple l'âge à partir de la date de naissance): il existe une bibliothèque de fonctions SQL permettant de tels calcul. Cette bibliothèque est décrite, pour le système MySQL, sur le site officiel de MySQL. L'existence de ces fonctions dans différentes implémentations de SQL sont décrites sur ce site.

Il peut aussi s'agir de calculer des fonctions statistiques (moyenne, maximum,...), par groupe au moyen d'une clause GROUP BY ou au tableau entier sinon.

Dans le mode Ebauche de Open Base, les fonctions de calcul apparaissent dans un menu.

Les variables dans les requêtes

Un petit exemple d'agence de voyages simplifié illustre cet aspect. Il faut d'abord télécharger la base de données ici.

Le but est de permettre l'utilisation d'une même table plusieurs fois dans une requête, avec des rôles différents: par exemple trouver tous les vols arrivant au point de départ d'un autre vol.

Ces variables apparaissent dans le mode Ebauche sous forme d'alias (le nom de la table suivi d'un chiffre).

La suite

Vous pouvez retourner à la page d'accueil du cours sur les requêtes.

Pour toute question, n'hésitez pas à me contacter .