tp2b
81
td1/Script-10.sql
Normal file
81
td1/Script-10.sql
Normal file
@@ -0,0 +1,81 @@
|
||||
-- Ajouter une société
|
||||
-- Il faut mettre TOUTES les colonnes id et nom
|
||||
-- dans l'ordre
|
||||
insert into societe values (1, 'UPS');
|
||||
|
||||
-- Plusieurs ligne en une seule commande
|
||||
-- Je peux spécifier qu'une seule colonne (ville)
|
||||
-- id est alors AUTO incrementé 1, 2, 3, 4, ...
|
||||
INSERT into entrepot (ville) values
|
||||
('Saint Dié'),
|
||||
('Paris'),
|
||||
('Lyon'),
|
||||
('Marseille');
|
||||
|
||||
-- supprimer TOUS les entrepots dont l'id > 4
|
||||
DELETE FROM entrepot WHERE id > 4;
|
||||
|
||||
insert INTO chauffeur (id, nom) values
|
||||
(1, 'Albert'),
|
||||
(2, 'Samia'),
|
||||
(3, 'Samy');
|
||||
|
||||
-- Je n'ai pas encore les permis
|
||||
insert into camion (immatriculation, marque,
|
||||
capacite) values
|
||||
('FR-234-PO', 'Volvo', 44),
|
||||
('EU-324-FE', 'Renault', 35),
|
||||
('DF-463-VD', 'Mercedes', 44),
|
||||
('CD-333-LW', 'Volvo', 35);
|
||||
|
||||
|
||||
insert into camion (immatriculation, marque,
|
||||
capacite) values
|
||||
('BG-468-VS', 'Iveco', 20);
|
||||
|
||||
insert into permis (categorie, poids_maximum)
|
||||
values
|
||||
('A', 0.75),
|
||||
('B', 3.5),
|
||||
('C', 35),
|
||||
('D', 44);
|
||||
|
||||
-- Mise à jour individuelle suivant la clé primaire
|
||||
-- (primary key)
|
||||
update camion set permis = 'D'
|
||||
WHERE immatriculation = 'FR-234-PO';
|
||||
|
||||
-- Mise à jour de plusieurs ligne suivant la capacité
|
||||
update camion set permis = 'D'
|
||||
WHERE capacite = 44;
|
||||
|
||||
update camion set permis = 'C'
|
||||
WHERE capacite = 35;
|
||||
|
||||
insert into examen (numero, date,
|
||||
permis, chauffeur_id) values
|
||||
(11156, '2020-04-20', 'A', 1),
|
||||
(98212, '2023-06-13', 'B', 1),
|
||||
(66874, '2022-10-21', 'C', 2);
|
||||
|
||||
|
||||
insert into transport values
|
||||
(1, '2025-09-20', 'FR-234-PO', 2, 1, 3);
|
||||
|
||||
|
||||
insert into transport values
|
||||
(2, '2030-09-20', 'ZZ-000-ZZ', 20, 10, 300);
|
||||
|
||||
|
||||
-- Activer le contrôle des clés étrangères
|
||||
PRAGMA foreign_keys = ON;
|
||||
|
||||
PRAGMA foreign_keys;
|
||||
|
||||
UPDATE camion set permis = 'Z'
|
||||
WHERE capacite > 30;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
11
td1/Script-8.sql
Normal file
11
td1/Script-8.sql
Normal file
@@ -0,0 +1,11 @@
|
||||
-- * = toutes les colonnes
|
||||
select * from entrepot
|
||||
|
||||
-- where filtre sur la marque
|
||||
select * from camion
|
||||
where marque = 'Volvo'
|
||||
|
||||
-- like recherche comme % n'importe quels caractères
|
||||
select * from chauffeur
|
||||
where nom like 'Sam%'
|
||||
|
||||
70
tp2.md
70
tp2.md
@@ -379,73 +379,3 @@ Utilisation de `distinct` pour supprimer les doublons.
|
||||
|
||||
```
|
||||
Attention l'égalité est stricte sur FirstName et LastName (respect des majuscules / minuscules)
|
||||
|
||||
## Utilisation des dates
|
||||
|
||||
### 12. Recette après le 01/05/2013
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
|
||||
### 13. Recette entre le 15/04/2012 et le 20/06/2012
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
|
||||
### 14. Recette du mois de février 2012
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
|
||||
STRFTIME (string from datetime) permet de formater au format de texte un date. Le format est complètement libre et personnalisable.
|
||||
|
||||
### 15. Recettes par mois
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
|
||||
### 16. Recette de l'année 2013
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
## Recherche sur le texte
|
||||
|
||||
### 17. Liste des pistes qui contiennent le mot Love
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
L'opérateur LIKE ne tient pas compte de la différence minuscule/majuscule
|
||||
|
||||
### 18. Liste des pistes qui contiennent les lettres Sun
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
|
||||
### 19. Liste des pistes qui contiennent le mot Sun
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
|
||||
## Cohérence
|
||||
|
||||
### 20. Le total de chaque facture est il juste ?
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
|
||||
ou en utilisant ROUND : HAVING i.Total <> Round(somme,2)
|
||||
|
||||
### 21. Existe t il des pistes dont le prix unitaire a évolué ?
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
|
||||
69
tp2b.md
Normal file
69
tp2b.md
Normal file
@@ -0,0 +1,69 @@
|
||||
## Utilisation des dates
|
||||
|
||||
### 12. Recette après le 01/05/2013
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
|
||||
### 13. Recette entre le 15/04/2012 et le 20/06/2012
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
|
||||
### 14. Recette du mois de février 2012
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
|
||||
STRFTIME (string from datetime) permet de formater au format de texte un date. Le format est complètement libre et personnalisable.
|
||||
|
||||
### 15. Recettes par mois
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
|
||||
### 16. Recette de l'année 2013
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
## Recherche sur le texte
|
||||
|
||||
### 17. Liste des pistes qui contiennent le mot Love
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
L'opérateur LIKE ne tient pas compte de la différence minuscule/majuscule
|
||||
|
||||
### 18. Liste des pistes qui contiennent les lettres Sun
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
|
||||
### 19. Liste des pistes qui contiennent le mot Sun
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
|
||||
## Cohérence
|
||||
|
||||
### 20. Le total de chaque facture est il juste ?
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
|
||||
ou en utilisant ROUND : HAVING i.Total <> Round(somme,2)
|
||||
|
||||
### 21. Existe t il des pistes dont le prix unitaire a évolué ?
|
||||
|
||||
```sql
|
||||
|
||||
```
|
||||
Reference in New Issue
Block a user