snt:donnee:activite5
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédente | |||
snt:donnee:activite5 [2019/09/12 12:08] – [Choisir les données à afficher : la projection] techer.charles_0870019y.campus.lyceeconnecte.fr | snt:donnee:activite5 [2019/09/12 14:05] (Version actuelle) – supprimée techer.charles_0870019y.campus.lyceeconnecte.fr | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== Activité les données structurées des bases de données ====== | ||
- | Quand nous avons une** grande quantité d' | ||
- | Actuellement la grande majorité des SGBD utilise le** modèle relationnel** qui consiste : | ||
- | * à mettre ensemble des **données de même nature** en les rangeant dans des **tables** de données ; | ||
- | * à définir des **relations** pour relier et croiser les données **entre elles**. | ||
- | * à utiliser le **langage SQL** ((Structured Query Language) pour **interroger, | ||
- | |||
- | Dans cette activité je vais **interroger** les données sur les villes française du site web http:// | ||
- | |||
- | ===== Les requêtes SQL ===== | ||
- | ==== Choisir les données à afficher : la projection ==== | ||
- | La projection consiste à choisir les informations, | ||
- | * Exemple : | ||
- | <code sql> | ||
- | select * | ||
- | from ville ; | ||
- | </ | ||
- | {{ : | ||
- | <WRAP center round info> | ||
- | Après la clause **select**, j' | ||
- | * les **colonnes** à afficher **séparées par des virgules** , | ||
- | * ou bien je mets le caractère ***** pour visualiser le contenu de **toutes les colonnes**. | ||
- | Puis j' | ||
- | </ | ||
- | <WRAP center round todo> | ||
- | **Question 1 :** Ecrire la requête SQL pour avoir le **nom**, le **code postal** et le **numéro de département** (dans cet ordre) des villes. | ||
- | |||
- | Résultat à obtenir : | ||
- | ^nom ^cp ^dep^ | ||
- | |Ozan |1190 |1| | ||
- | |Cormoranche-sur-Saône |1290|1| | ||
- | ... soit **36 700 lignes**. | ||
- | </ | ||
- | |||
- | * je peux aussi faire des calculs ou utiliser des fonctions : | ||
- | <WRAP center round todo> | ||
- | **Question 2 :** Ecrire la requête SQL qui indique pour chaque ville **l' | ||
- | **Résultat à obtenir :** | ||
- | ^ville ^augmentation^ | ||
- | |Ozan |-118| | ||
- | |Cormoranche-sur-Saône |-58| | ||
- | |Plagne |-29| | ||
- | |Tossiat |-6| | ||
- | |Pouillat |12| | ||
- | ... soit **36 700 lignes**. | ||
- | </ | ||
- | |||
- | ==== Eviter des résultats en double ==== | ||
- | Des requêtes peuvent renvoyer des **résultats identiques** et il est parfois utile d' | ||
- | * Exemple connaître la liste des départements sans utiliser **distinct** : | ||
- | <code sql> | ||
- | select dep as Département | ||
- | from villes ; | ||
- | </ | ||
- | **Résultat :** | ||
- | ^Département^ | ||
- | |1| | ||
- | |1| | ||
- | |1| | ||
- | ... | ||
- | soit **36 700 lignes**. | ||
- | * Connaître la liste des départements en utilisant **distinct** qui doit être placé une **seule fois** juste après le mot clé **select** : | ||
- | <code sql> | ||
- | select distinct dep as Département | ||
- | from villes ; | ||
- | </ | ||
- | **Résultat :** | ||
- | ^Département^ | ||
- | |1| | ||
- | |2| | ||
- | |3| | ||
- | ... | ||
- | soit **102 lignes**. | ||
- | |||
- | <WRAP center round todo> | ||
- | **Question 3 :** Ecrire la requête SQL qui donne la liste des codes postaux. La requête SQL doit renvoyer uniquement **6 082 lignes**. | ||
- | </ | ||
- | |||
- | ==== Trier les résultats obtenus ==== | ||
- | Les requêtes SQL renvoient en général les données dans **l' | ||
- | * Exemple connaître la liste villes par ordre alphabétique : | ||
- | <code sql> | ||
- | select nom as Ville | ||
- | from villes | ||
- | order by nom asc ; | ||
- | </ | ||
- | **Résultat :** | ||
- | ^Ville^ | ||
- | |Aast| | ||
- | |Abainville| | ||
- | |Abancourt| | ||
- | ... | ||
- | soit **36 700 lignes**. | ||
- | |||
- | <WRAP center round todo> | ||
- | **Question 4 :** Ecrire la requête SQL qui donne la liste des villes **selon le nom d' | ||
- | </ | ||
- | |||
- | ==== La sélection ==== | ||
- | J' | ||
- | * Exemple : avoir toutes les information de la ville de Panazol | ||
- | <code sql> | ||
- | select * | ||
- | from villes | ||
- | where nom = ' | ||
- | </ | ||
- | **Résultat :** | ||
- | 1 ville(s) trouvée(s) ! | ||
- | ^dep ^nom ^cp ^nb_hab_2010 ^nb_hab_1999 ^nb_hab_2012 ^dens ^surf ^longitude ^latitude ^alt_min ^alt_max^ | ||
- | |87 |Panazol |87350 |10392 |9727 |10100 |518 |20 |1.3 |45.8333 |215 |351| | ||
- | |||
- | Voici les opérateurs utilisables : | ||
- | === Les opérateurs de comparaison et logiques === | ||
- | ^Opérateur de comparaison^Description^Opérateurs logiques^Description^ | ||
- | ^=|égal à^and|les deux conditions doivent être vérifiées simultanément| | ||
- | ^< | ||
- | ^> | ||
- | ^< | ||
- | ^> | ||
- | ^<> | ||
- | |||
- | <WRAP center round todo> | ||
- | **Question 5 :** Ecrire la requête SQL qui donne la liste des villes qui ont **plus de 5000 habitants** en **2012**. La requête SQL doit renvoyer uniquement **2 007 lignes**. | ||
- | </ | ||
- | |||
- | === Les opérateur de comparaison de chaînes de caractères === | ||
- | ^LIKE^comparaison de chaînes (identiques)| | ||
- | ^NOT LIKE^chaîne différente| | ||
- | |||
- | % permet de remplacer n caractères | ||
- | _ | ||
- | |||
- | * Exemple : connaître les villes dont le nom commence par Limoges : | ||
- | <code sql> | ||
- | select nom as ville | ||
- | from villes | ||
- | where nom like ' | ||
- | </ | ||
- | **Résultat :** | ||
- | |||
- | ^ville^ | ||
- | |Limoges-Fourches| | ||
- | |Limoges| | ||
- | |||
- | <WRAP center round todo> | ||
- | **Question 6 :** Ecrire la requête SQL qui donne la liste des villes dont le nom contient les caractères **paris**. La requête SQL doit renvoyer uniquement **10 lignes**. | ||
- | </ | ||
- | |||
- | ===== Activité à faire à la maison ===== | ||
- | <WRAP center round todo> | ||
- | Je **consulte** la vidéo https:// | ||
- | * Quel a été le **premier usage** des bases de données ? | ||
- | * Quelles sont les **deux tables** utilisées pour gérer les données des expériences du professeur Tournesol ? | ||
- | * Quel a été la **méthode** utilisée pour retrouver l' | ||
- | </ | ||
- | ===== Pour en savoir plus ===== | ||
- | La vidéo https:// | ||
- | {{youtube> | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | ==== Je continue ... ==== | ||
- | <WRAP center round info > | ||
- | Je reviens à l' | ||
- | </ |
snt/donnee/activite5.1568282934.txt.gz · Dernière modification : 2019/09/12 12:08 de techer.charles_0870019y.campus.lyceeconnecte.fr