Files
nosql-document/exercice1.md

77 lines
2.0 KiB
Markdown
Raw Normal View History

2025-10-23 07:09:49 +02:00
# Exercice postgreSQL
Retirer le conteneur database (postgresql) et supprimer le volume associé
```shell
docker compose down 'database'
docker volume rm sql_database_data
```
2025-10-23 09:20:59 +02:00
Mettre à jour le projet
```shell
git pull origin
```
ou si nouveau projet
```
git clone https://sources.neotech.fr/Universite/sql.git
```
Construire l'image
```shell
docker build -t iut/pgsql:2025-12 -f postgresql.Dockerfile .
```
Renommer le fichier .env.example en .env
2025-10-23 07:09:49 +02:00
Composer le nouveau conteneur
```shell
docker compose up -d 'database' --build
```
## JSON
Les opérateurs spécifiques JSON
Opérateur|Description|Exemple
--- |--- | ---
-> | Retourne un objet JSON |SELECT data->'additionalProperty' as propriété from item where id = 2509331;
->> | Retourne du texte |SELECT data->>'name' AS name from item;
#> | Accès par chemin |SELECT data#>'{additionalProperty,groupe}' as propriété from item where id = 2509331
#>> | Accès par chemin en texte|SELECT data#>>'{additionalProperty,groupe,manufacturer,name}' as propriété from item where id = 2509331
@> | Test d'inclusion
Fonctions|Description
---|---
jsonb_array_elements|Extraction en table
jsonb_array_elements_text|Extraction en chaine de caractères
jsonb_each | Renvoie les paires clé/valeur dun objet JSON
jsonb_object_keys|Liste des clés
jsonb_array_length|Taille d'un tableau
## Questions
2025-10-23 09:39:18 +02:00
Exemple de stucture du [fichier json](item.md)
2025-10-23 09:20:59 +02:00
2025-10-23 09:22:26 +02:00
1. Dans la table item lister les numéros sku et le nom du fabriquant (manufacturer).
2025-10-23 07:09:49 +02:00
2. Trouver tous les vélos de marque Cannondale
3. Filtrer les vélo dont la taille de cadre est M
4. Afficher le deuxième élément du tableau tailles pour chaque vélo.
5. Afficher le sku et pour chaque taille (dans geometry) la valeur du tube supérieur. Afficher 1 ligne par taille
2025-10-23 09:38:14 +02:00
6. Afficher le total des offres pour les vélos de marque BMC en taille L
2025-10-23 07:09:49 +02:00
7. Combien de tailles pour le vélo dont le sku est 2489126
8. Extraire la liste des caractèristiques (uniquement le nom) pour le vélo dont le sku est 2489126