knowt logo

Language SQL DML

Select ?

→ extrait des données des tables

From ?

→ c’est les tables à partir des quelles on va chercher l’information

Select * ?

→ affiche l’ensemble des colonnes.

Select distinct ?

→ supprime les doublons, fait partie des opérateurs sql

Select = afficher

From = colonne où se trouve les données

in ?

→ c’est pour dire que les données sont dans plusieurs catégories.

Not in ?

→ pour dire que les données ne sont pas dans plusieurs valeurs.

Between ?

→ pour des comparaisons c’est in, not in, et pour des comparaisons “entre” c’est between, et pas >=.

Un masque ?

→ définit une faille de chaînes de caractères : ‘B_’ ou ‘%SAPIN%’

_ ?

→ un caractère

% ?

→ plusieurs caratères

and ?

→ permet une double combinaison

Il faut toujours qu’il aie un … dans une combinaison ?

→ un from.

COMPTE > 0 ?

→ COMPTE est créditeur

Select NOM, ADRESSE, COMPTE

Where COMPTE > 0,

and (CAT = ‘C1’ or LOCALITÉ = ‘Paris’)?

→ afficher le nom, adresse et compte qui est créditeur et qui se trouve dans la catégorie ‘C1’ ou est dans ‘Paris’.

→ Savoir chaque table correspond à quoi pour la semaine pro

as ?

→ permet de renommer des colonnes

Le moteur SQL commence par lire le ‘from’ dans une combinaison.

2ème ligne : le where.

Les alias dans un select ne peuvent jamais être utilisés dans un … ?

→ where.

Fonctions préprogrammées ?

  • trim ?

    → Utilisé pour effacer les espaces blancs (supprime avec des concaténations : barres droites sur clavier pc)

  • Cast ?

    → conversion de type.

Fonction temporelle ?

→ afficher uniquement une valeur précise.

Substring ?

→ sous chaîne de caractère, ( for 1 = pour la 1ère lettre de la catégorie)

Si je veux soustraire la 2ème et troisième lettre de la catégorie ?

→ (from 2 for 2) à partir de la 2 eme jusque la troisième. (Ne pas mettre for 3 car ça va prendre la 4eme lettre avec)

Avg(COMPTE) ?

→ moyenne d’une colonne.

Max (COMPTE) ?

→ prend toutes les valeurs maximales d’une colonne.

Select Sum (QSTOCK*PRIX)

from PRODUIT

where LIBELLE like ‘%SAPIN%’; ?

→ total du montant en stock des produits qui ont le libellé SAPIN.

select count (distinct NCLI)

From COMMANDE ?

→ affiche le nombre de clients distincts dans la colonne COMMANDE

select count(distinct NCLI) as Nombre,

            count(distinct NOM) as Noms,

            count(distinct LOCALITE) as Localités,

            count(distinct CAT) as Catégories

     from   CLIENT; ?

Les fonctions agrégatives (statistiques) ?`

pas à savoir pour l’examen

Résultat dans une autre requête ?

select NCOM, DATECOM

     from   COMMANDE

     where  NCLI in (select NCLI

                     from   CLIENT

                     where  LOCALITE = 'Namur');

Voir slide 27.

→ shéma important.

Condition de non association ?

→ c’est donner les commandes qui ne spécifie pas une valeur.

Quelles sont les commandes qui ne spécifient pas le produit PA60 ? (Question examen)

select NCOM, DATECOM, NCLI

     from   COMMANDE

     where  NCOM in (select NCOM

                     from   DETAIL

                     where  NPRO <> 'PA60');

Chaque fois qu’on est confrontés à une condition d’association on doit absolument utiliser ?

→ fonctionne uniquement avec un not in et un not exist.

select NCLI, NOM, LOCALITE, COMPTE

     from   CLIENT as C

     where  COMPTE > (select avg(COMPTE)

                      from   CLIENT

                      where  LOCALITE = C.LOCALITE);

Qu’est ce que le C ?

→ c’est une variable qui à chaque instant référence la ligne courant CLIENT dans la requête externe.

Quantifiacteurs ensembliste ?

existes(E) ?

→ c’est un prédicat, variable qui peut prendre deux valeurs. Il check si une valeur est dans une colonne et puis la

Table détail ?

→ table où se trouve toutes les commandes

Pour tout ? → spécifie tous les produits de commandes.

→ chaque fois qu’on a pas d’opérateur pour tout, il faut passer par les opérateurs not in et not exist.

L

Language SQL DML

Select ?

→ extrait des données des tables

From ?

→ c’est les tables à partir des quelles on va chercher l’information

Select * ?

→ affiche l’ensemble des colonnes.

Select distinct ?

→ supprime les doublons, fait partie des opérateurs sql

Select = afficher

From = colonne où se trouve les données

in ?

→ c’est pour dire que les données sont dans plusieurs catégories.

Not in ?

→ pour dire que les données ne sont pas dans plusieurs valeurs.

Between ?

→ pour des comparaisons c’est in, not in, et pour des comparaisons “entre” c’est between, et pas >=.

Un masque ?

→ définit une faille de chaînes de caractères : ‘B_’ ou ‘%SAPIN%’

_ ?

→ un caractère

% ?

→ plusieurs caratères

and ?

→ permet une double combinaison

Il faut toujours qu’il aie un … dans une combinaison ?

→ un from.

COMPTE > 0 ?

→ COMPTE est créditeur

Select NOM, ADRESSE, COMPTE

Where COMPTE > 0,

and (CAT = ‘C1’ or LOCALITÉ = ‘Paris’)?

→ afficher le nom, adresse et compte qui est créditeur et qui se trouve dans la catégorie ‘C1’ ou est dans ‘Paris’.

→ Savoir chaque table correspond à quoi pour la semaine pro

as ?

→ permet de renommer des colonnes

Le moteur SQL commence par lire le ‘from’ dans une combinaison.

2ème ligne : le where.

Les alias dans un select ne peuvent jamais être utilisés dans un … ?

→ where.

Fonctions préprogrammées ?

  • trim ?

    → Utilisé pour effacer les espaces blancs (supprime avec des concaténations : barres droites sur clavier pc)

  • Cast ?

    → conversion de type.

Fonction temporelle ?

→ afficher uniquement une valeur précise.

Substring ?

→ sous chaîne de caractère, ( for 1 = pour la 1ère lettre de la catégorie)

Si je veux soustraire la 2ème et troisième lettre de la catégorie ?

→ (from 2 for 2) à partir de la 2 eme jusque la troisième. (Ne pas mettre for 3 car ça va prendre la 4eme lettre avec)

Avg(COMPTE) ?

→ moyenne d’une colonne.

Max (COMPTE) ?

→ prend toutes les valeurs maximales d’une colonne.

Select Sum (QSTOCK*PRIX)

from PRODUIT

where LIBELLE like ‘%SAPIN%’; ?

→ total du montant en stock des produits qui ont le libellé SAPIN.

select count (distinct NCLI)

From COMMANDE ?

→ affiche le nombre de clients distincts dans la colonne COMMANDE

select count(distinct NCLI) as Nombre,

            count(distinct NOM) as Noms,

            count(distinct LOCALITE) as Localités,

            count(distinct CAT) as Catégories

     from   CLIENT; ?

Les fonctions agrégatives (statistiques) ?`

pas à savoir pour l’examen

Résultat dans une autre requête ?

select NCOM, DATECOM

     from   COMMANDE

     where  NCLI in (select NCLI

                     from   CLIENT

                     where  LOCALITE = 'Namur');

Voir slide 27.

→ shéma important.

Condition de non association ?

→ c’est donner les commandes qui ne spécifie pas une valeur.

Quelles sont les commandes qui ne spécifient pas le produit PA60 ? (Question examen)

select NCOM, DATECOM, NCLI

     from   COMMANDE

     where  NCOM in (select NCOM

                     from   DETAIL

                     where  NPRO <> 'PA60');

Chaque fois qu’on est confrontés à une condition d’association on doit absolument utiliser ?

→ fonctionne uniquement avec un not in et un not exist.

select NCLI, NOM, LOCALITE, COMPTE

     from   CLIENT as C

     where  COMPTE > (select avg(COMPTE)

                      from   CLIENT

                      where  LOCALITE = C.LOCALITE);

Qu’est ce que le C ?

→ c’est une variable qui à chaque instant référence la ligne courant CLIENT dans la requête externe.

Quantifiacteurs ensembliste ?

existes(E) ?

→ c’est un prédicat, variable qui peut prendre deux valeurs. Il check si une valeur est dans une colonne et puis la

Table détail ?

→ table où se trouve toutes les commandes

Pour tout ? → spécifie tous les produits de commandes.

→ chaque fois qu’on a pas d’opérateur pour tout, il faut passer par les opérateurs not in et not exist.

robot