0% ont trouvé ce document utile (0 vote)
80 vues5 pages

I. Interrogation de La Base de Données (SELECT) : 1. Syntaxe Générale

Transféré par

nazihanziha569
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
80 vues5 pages

I. Interrogation de La Base de Données (SELECT) : 1. Syntaxe Générale

Transféré par

nazihanziha569
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Atelier Bases de Données TP SQL / TP2

I. Interrogation de la base de données (SELECT)

1. Syntaxe générale

La recherche d’information dans une base de données s’effectue à l’aide de la


commande SQL SELECT.

Syntaxe:

SELECT [ALL ou DISTINCT] attribut1, attribut2, ..., attribut N

FROM nom_de_la_table
WHERE condition

GROUP BY expression

HAVING condition
ORDER BY nom-attribut [ASC/DESC];

Remarque:

- Le caractère * après SELECT indique que toutes les colonnes de la table doivent être
prises en compte.
- L'option ALL (par défaut) permet de sélectionner l'ensemble des lignes satisfaisant à
la condition logique.
- L'option DISTINCT permet de ne conserver que des lignes distinctes, en éliminant les
doublons.
- La clause FROM: permet de spécifier la (ou les) table (s) à interroger.
- La clause WHERE: réalise l’opération de restriction de l’algèbre relationnelle en
filtrant les lignes de la table qui répondent au critère de sélection.
- Les clauses GROUP BY (grouper les résultats), HAVING (restriction avec condition) et
ORDER BY (tri des résultats par ordre croissant ou décroissant) sont facultatives.

2. Les prédicats
2.1. BETWEEN/NOT BETWEEN:
- Teste l’appartenance d’une valeur à un intervalle.
Exemple: nom des employés dont le salaire est compris entre 3000 et 5000

SELECT Enom
FROM employe
WHERE salaire BETWEEN 3000 AND 5000;

1
Atelier Bases de Données TP SQL / TP2

2.2. LIKE:
- Permet de faire une recherche approximative.
- Le caractère % remplace un ensemble de caractères.
- Le caractère – remplace un seul caractère.

Exemple: matricule des employés dont le nom commence par A.


SELECT matricule
FROM employe
WHERE Enom LIKE ‘A%’;

2.3. IS NULL /IS NOT NULL:

- Permet de tester si un champ a été affecté.

Exemple: nom des employés ayant une commission non spécifiée (NULL) ?
SELECT Enom
FROM employe
WHERE commission IS NULL

3. La jointure
SELECT attribut1, attribut2,......
FROM table1 [alias], table2 [alias],......
WHERE [Link]= [Link];

4. Les requêtes imbriquées

4.1. IN / NOT IN: Permet de tester la présence ou l’absence d’une valeur particulière
dans un ensemble de valeurs.

Exemple: nom des employés occupant la fonction PRESIDENT ou MANAGER


SELECT Enom
FROM employés
WHERE FONCTION IN (‘PRESIDENT’, ‘MANAGER’);

4.2. ALL\ANY:
- ALL: Compare chacune des valeurs de l’ensemble à une valeur particulière et
retourne vrai si la comparaison est évaluée pour chacun des éléments.
- ANY: Compare chacune des valeurs de l’ensemble à une valeur particulière et
retourne vrai si la comparaison est évaluée pour au moins un des éléments.
4.3. EXISTS / NOT EXISTS:
- Retourne vrai si une requête imbriquée retourne au moins une ligne.

2
Atelier Bases de Données TP SQL / TP2

Exercice 2 / TP2
En utilisant SQL*Plus, exprimer les requêtes suivantes:
1. Nom, salaire, commission, salaire+commission de tous les managers.
2. Nom des managers par ordre décroissant de salaire.
3. Nom des managers dont la commission est inférieur à 25% de leur salaire.
4. Augmenter le salaire des employés de département finance de 15%.
5. Nom des employés avec le nom de leur département.
6. Nom, fonction et salaire de l'employé ayant le salaire le plus élevé.
7. Nom des employés gagnant plus que ‘SCOTT’.
8. Nom, salaire des employés qui gagne plus que la moyenne des salaires des employés
de département commercial et moins que le minimum de département finance.
9. Nom des employés occupant la même fonction que ‘SCOTT’.

3
Atelier Bases de Données TP SQL / TP2

Interrogation de la base de données (SELECT)

Les expressions arithmétiques


Dans les clauses SELECT et WHERE, on peut utiliser des expressions arithmétiques :
 ABS(n) : permet de calculer la valeur absolue de n.
 CEIL(n) : permet d'avoir le plus petit entier supérieur ou égal à n.
 Ceil(128.3) retourne 129 Ceil(128.8) retourne 129.
 FLOOR(n) : permet d'avoir la partie entière de n.
 FLOOR(128.3) retourne 128 FLOOR(128.8) retourne 128.
 MOD(m,n) : permet d'avoir le reste de la division entière de m par n.
 ROUND(m,n) : arrondit la valeur n à m décimal.
 Round(128.3) retourne 128 Round(128.8) retourne 129.
 POWER(m,n) : permet d'avoir m puissance n.
 SIGN(n) : donne –1 si n<0, donne 0 si n=0 et donne 1 si n>1.
 SQRT(n) : permet d'avoir √x.

Les fonctions s'appliquant aux chaînes de caractère


Dans les clauses SELECT et WHERE, on peut utiliser des fonctions:
 RTRIM (ch) : supprime l'espace à la fin de la chaîne ≠ LTRIM.
 RPAD (ch,n) : ajoute n espaces l'espace à la fin de la chaîne ≠ LPAD.
 INITCAP(ch) : met en majuscule la première lettre de chaque mot de la chaîne.
 INSTR(ch1,ch2,n,m) : donne la position de la mième occurrence de ch2 dans ch1 à
partir du caractère à la position n.
 LENGTH(ch) : renvoie la longueur d'une chaîne.
 LOWER(ch) : transforme la chaîne ch en minuscule ≠ UPPER.
 SUBSTR(ch,m,n) : permet d'extraire la sous-chaîne de ch qui commence à partir
du caractère à la position m et de longueur n.
 TRANSLATE(ch,ch1,ch2) : permet de transformer dans la chaîne ch toutes les
occurrences de ch1 par ch2.
 Replace(ch, ch1[,ch2]) : remplace une chaîne par une autre dans une colonne. Si
on ne met pas ch2, ch1 va être remplacée par un vide.
 ch1││ch2 : concatène les deux chaînes.

Les expressions agrégats (ou fonctions de groupe)


ORACLE dispose d'une fonction appelée fonctions agrégats qui s'appliquent à un
ensemble de données :
 AVG : permet d'avoir la moyenne arithmétique d'un ensemble donné.

4
Atelier Bases de Données TP SQL / TP2

 COUNT : permet d'avoir le nombre d'occurrences des enregistrements.


 MAX : permet d'avoir la valeur maximale dans une colonne.
 MIN : permet d'avoir la valeur minimale dans une colonne.
 SUM : permet d'avoir la somme des éléments.
 STDDEV : permet d'avoir l'écart type.
 VARIANCE : permet d'avoir la variance.

Exercice 3 :
1. Nombre d'employés du département n° 10.
2. Nombre d'employés ayant une commission.
3. Attribuer aux employés en poste avant le 01/0/195 (DATEREC) et ayant une
commission non spécifiée (NULL) une commission égale à la moyenne des
commissions.
4. Nombre de fonctions différentes.
5. Nombre d’employés par département.
6. Total des salaires par département qui ont un nombre d’employés > 3.

Vous aimerez peut-être aussi