Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parFraser Blondeau Modifié depuis plus de 9 années
1
Copyright Oracle Corporation, 1998. Tous droits réservés. 2 Sélection et Tri des Lignes Retournées par un SELECT
2
2-2 Copyright Oracle Corporation, 1998.Tous droits réservés. Objectifs A la fin de ce chapitre, vous saurez : Limiter le nombre de lignes retournées par une requête Trier les lignes retournées par une requête A la fin de ce chapitre, vous saurez : Limiter le nombre de lignes retournées par une requête Trier les lignes retournées par une requête
3
2-3 Copyright Oracle Corporation, 1998.Tous droits réservés. Sélectionner les Lignes “…rechercher tous les employés du département 10” EMP EMPNO ENAME JOB... DEPTNO 7839KINGPRESIDENT 10 7698BLAKEMANAGER 30 7782CLARKMANAGER 10 7566JONESMANAGER 20... EMP EMPNO ENAME JOB... DEPTNO 7839KINGPRESIDENT 10 7782CLARKMANAGER 10 7934MILLERCLERK 10
4
2-4 Copyright Oracle Corporation, 1998.Tous droits réservés. Sélectionner les Lignes Restreindre la sélection au moyen de la clause WHERE. La clause WHERE se place après la clause FROM. Restreindre la sélection au moyen de la clause WHERE. La clause WHERE se place après la clause FROM. SELECT[DISTINCT] {*, column [alias],...} FROM table [WHEREcondition(s)];
5
2-5 Copyright Oracle Corporation, 1998.Tous droits réservés. Utilisation de la Clause WHERE SQL> SELECT ename, job, deptno 2 FROM emp 3 WHERE job='CLERK'; ENAME JOB DEPTNO ---------- --------- --------- JAMES CLERK 30 SMITH CLERK 20 ADAMS CLERK 20 MILLER CLERK 10
6
2-6 Copyright Oracle Corporation, 1998.Tous droits réservés. Chaînes de Caractères et Dates Les constantes chaînes de caractères et dates doivent être placées entre simples quotes. La recherche tient compte des majuscules et minuscules (pour les chaînes de caractère) et du format (pour les dates.) Le format de date par défaut est 'DD-MON-YY'. Les constantes chaînes de caractères et dates doivent être placées entre simples quotes. La recherche tient compte des majuscules et minuscules (pour les chaînes de caractère) et du format (pour les dates.) Le format de date par défaut est 'DD-MON-YY'. SQL> SELECTename, job, deptno 2 FROM emp 3 WHEREename = 'JAMES'; SQL> SELECTename, job, deptno 2 FROM emp 3 WHEREename = 'JAMES';
7
2-7 Copyright Oracle Corporation, 1998.Tous droits réservés. Opérateurs de Comparaison Opérateur = > >= < <= <> Signification Egal à Supérieur à Supérieur ou égal à Inférieur à Inférieur ou égal à Différent de
8
2-8 Copyright Oracle Corporation, 1998.Tous droits réservés. Utilisation des Opérateurs de Comparaison SQL> SELECT ename, sal, comm 2 FROM emp 3 WHERE sal<=comm; ENAME SAL COMM ---------- --------- --------- MARTIN 1250 1400
9
2-9 Copyright Oracle Corporation, 1998.Tous droits réservés. Autres Opérateurs de Comparaison Opérateur BETWEEN...AND... IN (liste) LIKE IS NULL Signification Compris entre... et... (bornes comprises) Correspond à une valeur de la liste Ressemblance partielle de chaînes de caractères Correspond à une valeur NULL
10
2-10 Copyright Oracle Corporation, 1998.Tous droits réservés. Utilisation de l’Opérateur BETWEEN ENAME SAL ---------- --------- MARTIN 1250 TURNER 1500 WARD 1250 ADAMS 1100 MILLER 1300 SQL> SELECTename, sal 2 FROM emp 3 WHEREsal BETWEEN 1000 AND 1500; Limite inférieure Limite supérieure BETWEEN permet de tester l'appartenance à une fourchette de valeurs.
11
2-11 Copyright Oracle Corporation, 1998.Tous droits réservés. Utilisation de l’Opérateur IN IN permet de comparer une expression avec une liste de valeurs. SQL> SELECTempno, ename, sal, mgr 2 FROM emp 3 WHEREmgr IN (7902, 7566, 7788); EMPNO ENAME SAL MGR --------- ---------- --------- --------- 7902 FORD 3000 7566 7369 SMITH 800 7902 7788 SCOTT 3000 7566 7876 ADAMS 1100 7788
12
2-12 Copyright Oracle Corporation, 1998.Tous droits réservés. Utilisation de l’Opérateur LIKE LIKE permet de rechercher des chaînes de caractères à l'aide de caractères génériques Les conditions de recherche peuvent contenir des caractères ou des nombres littéraux. – (%) représente zéro ou plusieurs caractères – ( _ ) représente un caractère LIKE permet de rechercher des chaînes de caractères à l'aide de caractères génériques Les conditions de recherche peuvent contenir des caractères ou des nombres littéraux. – (%) représente zéro ou plusieurs caractères – ( _ ) représente un caractère SQL> SELECTename 2 FROM emp 3 WHEREename LIKE 'S%';
13
2-13 Copyright Oracle Corporation, 1998.Tous droits réservés. Utilisation de l’Opérateur LIKE Vous pouvez combiner plusieurs caractères génériques de recherche. Vous pouvez utiliser l’identifiant ESCAPE pour rechercher "%" ou "_". Vous pouvez combiner plusieurs caractères génériques de recherche. Vous pouvez utiliser l’identifiant ESCAPE pour rechercher "%" ou "_". SQL> SELECTename 2 FROMemp 3 WHEREename LIKE '_A%'; ENAME ---------- JAMES WARD
14
2-14 Copyright Oracle Corporation, 1998.Tous droits réservés. Utilisation de l’Opérateur IS NULL Recherche de valeurs NULL avec l’opérateur IS NULL SQL> SELECT ename, mgr 2 FROM emp 3 WHERE mgr IS NULL; ENAME MGR ---------- --------- KING
15
2-15 Copyright Oracle Corporation, 1998.Tous droits réservés. Opérateurs Logiques Opérateur AND OR NOT Signification Retourne TRUE si les deux conditions sont VRAIES Retourne TRUE si l’une au moins des conditions est VRAIE Ramène la valeur TRUE si la condition qui suit l’opérateur est FAUSSE
16
2-16 Copyright Oracle Corporation, 1998.Tous droits réservés. Utilisation de l’Opérateur AND Avec AND, les deux conditions doivent être VRAIES. SQL> SELECT empno, ename, job, sal 2 FROM emp 3 WHERE sal>=1100 4 AND job='CLERK'; EMPNO ENAME JOB SAL --------- ---------- --------- --------- 7876 ADAMS CLERK 1100 7934 MILLER CLERK 1300
17
2-17 Copyright Oracle Corporation, 1998.Tous droits réservés. Utilisation de l’Opérateur OR Avec OR, l'une ou l'autre des deux conditions doit être VRAIE. Avec OR, l'une ou l'autre des deux conditions doit être VRAIE. SQL> SELECT empno, ename, job, sal 2 FROM emp 3 WHERE sal>=1100 4 OR job='CLERK'; EMPNO ENAME JOB SAL --------- ---------- --------- --------- 7839 KING PRESIDENT 5000 7698 BLAKE MANAGER 2850 7782 CLARK MANAGER 2450 7566 JONES MANAGER 2975 7654 MARTIN SALESMAN 1250... 14 rows selected.
18
2-18 Copyright Oracle Corporation, 1998.Tous droits réservés. Utilisation de l’Opérateur NOT SQL> SELECT ename, job 2 FROM emp 3 WHERE job NOT IN ('CLERK','MANAGER','ANALYST'); ENAME JOB ---------- --------- KING PRESIDENT MARTIN SALESMAN ALLEN SALESMAN TURNER SALESMAN WARD SALESMAN... WHERE sal NOT BETWEEN 1000 AND 1500... WHERE ename NOT LIKE ’%A%’... WHERE comm IS NOT NULL
19
2-19 Copyright Oracle Corporation, 1998.Tous droits réservés. Règles de Priorité Les parenthèses permettent de modifier les règles de priorité Ordre de priorité Opérateur 1Tous les opérateurs de comparaison 2NOT 3AND 4OR
20
2-20 Copyright Oracle Corporation, 1998.Tous droits réservés. Règles de Priorité ENAME JOB SAL ---------- --------- --------- KING PRESIDENT 5000 MARTIN SALESMAN 1250 ALLEN SALESMAN 1600 TURNER SALESMAN 1500 WARD SALESMAN 1250 ENAME JOB SAL ---------- --------- --------- KING PRESIDENT 5000 MARTIN SALESMAN 1250 ALLEN SALESMAN 1600 TURNER SALESMAN 1500 WARD SALESMAN 1250 SQL> SELECT ename, job, sal 2 FROM emp 3 WHERE job='SALESMAN' 4 OR job='PRESIDENT' 5 AND sal>1500;
21
2-21 Copyright Oracle Corporation, 1998.Tous droits réservés. Règles de Priorité ENAME JOB SAL ---------- --------- --------- KING PRESIDENT 5000 ALLEN SALESMAN 1600 ENAME JOB SAL ---------- --------- --------- KING PRESIDENT 5000 ALLEN SALESMAN 1600 Utilisation de parenthèses pour forcer la priorité. Utilisation de parenthèses pour forcer la priorité. SQL> SELECT ename, job, sal 2 FROM emp 3 WHERE (job='SALESMAN' 4 OR job='PRESIDENT') 5 AND sal>1500;
22
2-22 Copyright Oracle Corporation, 1998.Tous droits réservés. Clause ORDER BY Tri des lignes avec la clause ORDER BY – ASC : ordre croissant (par défaut) – DESC : ordre décroissant La clause ORDER BY se place à la fin de l’ordre SELECT Tri des lignes avec la clause ORDER BY – ASC : ordre croissant (par défaut) – DESC : ordre décroissant La clause ORDER BY se place à la fin de l’ordre SELECT SQL> SELECT ename, job, deptno, hiredate 2 FROM emp 3 ORDER BY hiredate; ENAME JOB DEPTNO HIREDATE ---------- --------- --------- --------- SMITH CLERK 20 17-DEC-80 ALLEN SALESMAN 30 20-FEB-81... 14 rows selected.
23
2-23 Copyright Oracle Corporation, 1998.Tous droits réservés. Tri par Ordre Décroissant SQL> SELECT ename, job, deptno, hiredate 2 FROM emp 3 ORDER BY hiredate DESC; ENAME JOB DEPTNO HIREDATE ---------- --------- --------- --------- ADAMS CLERK 20 12-JAN-83 SCOTT ANALYST 20 09-DEC-82 MILLER CLERK 10 23-JAN-82 JAMES CLERK 30 03-DEC-81 FORD ANALYST 20 03-DEC-81 KING PRESIDENT 10 17-NOV-81 MARTIN SALESMAN 30 28-SEP-81... 14 rows selected.
24
2-24 Copyright Oracle Corporation, 1998.Tous droits réservés. Tri sur l’Alias de Colonne SQL> SELECT empno, ename, sal*12 annsal 2 FROM emp 3 ORDER BY annsal; EMPNO ENAME ANNSAL --------- ---------- --------- 7369 SMITH 9600 7900 JAMES 11400 7876 ADAMS 13200 7654 MARTIN 15000 7521 WARD 15000 7934 MILLER 15600 7844 TURNER 18000... 14 rows selected.
25
2-25 Copyright Oracle Corporation, 1998.Tous droits réservés. Tri sur Plusieurs Colonnes L’ordre des éléments de la liste ORDER BY donne l’ordre du tri. Vous pouvez effectuer un tri sur une colonne ne figurant pas dans la liste SELECT. SQL> SELECTename, deptno, sal 2 FROM emp 3 ORDER BY deptno, sal DESC; ENAME DEPTNO SAL ---------- --------- --------- KING 10 5000 CLARK 10 2450 MILLER 10 1300 FORD 20 3000... 14 rows selected.
26
2-26 Copyright Oracle Corporation, 1998.Tous droits réservés. Résumé SELECT[DISTINCT] {*, column [alias],...} FROM table [WHEREcondition(s)] [ORDER BY{column, expr, alias} [ASC|DESC]];
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.