Copyright  Oracle Corporation, 1998. Tous droits réservés. 2 Sélection et Tri des Lignes Retournées par un SELECT.

Slides:



Advertisements
Présentations similaires
Manipulation des données dans SQL
Advertisements

SQL - Subtilités.
STS2 - Révision des requêtes de sélection2/9/2003 Forme d'une requête de Sélection nSELECT nFROM nWHERE nGROUP BY nHAVING nORDER BY.
Année universitaire Système dinformation Le SQL (Structured Query Language) langage dinterrogation dune base de données.
Mise en Forme des Résultats avec SQL*Plus
LMD: Langage de Manipulation de Données
L'Ordre SELECT Élémentaire
BASE DE DONNEES RELATIONNELLES
Regrouper les Données avec les Fonctions de Groupe
T ECHNOLOGIES O RACLE Manipulation des données © sebvita.com.
Copyright Oracle Corporation, Tous droits réservés. 9 Écriture de Sous- Interrogations Synchronisées.
Les fonctions de groupes Gestion des transactions
Bases de données et SGBD relationnels
Fonctions Mono-Ligne.
SELECT {* | Expression [Alias] [,...] } FROM Table [WHERE Condition] [ORDER BY { Expression | Alias } [ ASC | DESC ] [NULLS FIRST | NULLS LAST ] [,...]
SQL Partie 3 : (LID : Langage d'interrogation de données)
BASES DE DONNÉES RELATIONNELLES Introduction
EPID-CPI-ISAIP Philippe Bancquart - mise à jour 24/02/ page 1 SQL PHILIPPE BANCQUART.
1 SQL Avancé 2010 Witold Litwin 2 Quoi & Pourquoi ? n Possibilités Etendues de Manipulation de BDs relationnelles n Fondamentales pour lexploration approfondie.
1 SQL Manipulations Avancées (08-09) Witold Litwin.
1 SQL Manipulations Avancées (08-09) Witold Litwin.
1 SQL Manipulations Avancées Witold Litwin 2 Exemple canon S P SPSP.
Manipulation des données Requêtes simples
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 SQL: Requêtes, Programmation et Triggers Chapitre 5, Sections
Christine Bonnet SOURCES : « Samples » dOracle, « Oracle 8 » R. Chapuis PRO*C – C ++
OPTIMISATION DE BASE DE DONNEES ORACLE
Limiter et trier des données
Introduction Le SQL (Structured  Query Language) est un langage universel de gestion des bases de données. Il a une triple fonction : LDD Langage de Définition.
Chapitre 5 : Le langage SQL
Traduction des opérations sous MySQL
JDBC L'API JDBC est utilisée pour utilisée pour intéragir avec une base de données.
Les Composants de l’architecture Oracle
Cours 5: Sous requetes Exploitation des données Présentation  Supposez que vous voulez écrire une requête pour trouver qui a un salaire plus.
Chapitre 6.2 Les curseurs Cours SGBD 3A Mme hkimi Jihène
Objectifs A la fin de ce chapitre, vous pourrez : présenter l'utilisation d'opérations de chargement de données par chemin direct décrire l'utilisation.
Manipulation des Données
1 PHP 5 Notions fondamentales (cours #5) Formation continue – Cégep de Sainte-Foy.
Sous-Interrogations.
Module 7 : Utilisation de requêtes élaborées
Sélection de colonnes (la projection)
Gérer les rôles.
Les Contraintes.
BASES DE DONNÉES RELATIONNELLES
Révision du langage PL/SQL
Afficher des Données Issues de Plusieurs Tables
Création et Gestion de Tables
3 Copyright © Oracle Corporation, Tous droits réservés. Créer des fonctions.
Le langage SQL. Voir polycopié: Introduction à SQL SQL.
Copyright  Oracle Corporation, Tous droits réservés. 11 Extraction Hiérarchique.
NIVEAU LOGIQUE Vues. Fenêtre dynamique sur la base Ses données proviennent d'autres tables ou d'autres vues.
INTRODUCTION AUX BASES DE DONNEES SQL -2
Complément sous-requêtes
Le Langage d ’ Interrogation des donn é es (LID) Module 2.
Introduction au langage PL/SQL
Les vues, indexes, séquences.  Qu’est ce qu’une vue 1. Une vue est une vision partielle ou particulière des données d'une ou plusieurs tables de la base.
Le Langage de Manipulation de Données LMD Module 6.
CONCEPTS BD - Synthèse journée 1 :
Base de données Magasins.accdb
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 4 Support de cours rédigé par Bernard COFFIN Université.
1 Les bases de données Séance 6 L ’extraction de données Le SELECT.
Langage de manipulation de données (LMD)
Langage d’interrogation des Données LID
Langage d’interrogation des Données LID
1 Copyright © 2004, Oracle. Tous droits réservés. Extraire des données à l'aide de l'instruction SQL SELECT.
2 Copyright © 2004, Oracle. Tous droits réservés. Restreindre et trier les données.
4 Copyright © 2004, Oracle. Tous droits réservés. Afficher des données agrégées à l'aide des fonctions de groupe.
6 Copyright © 2004, Oracle. Tous droits réservés. Utiliser des sous-interrogations pour résoudre des interrogations.
7 Copyright © 2004, Oracle. Tous droits réservés. Utiliser les opérateurs ensemblistes.
LANGAGE SQL 1. PLAN DU COURS A.Langage d’interrogation des données LID B.Langage de manipulation des données LMD A.Chapitre 3 : Langage de définition.
Opérateurs Ensemblistes
Transcription de la présentation:

Copyright  Oracle Corporation, Tous droits réservés. 2 Sélection et Tri des Lignes Retournées par un SELECT

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

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 BLAKEMANAGER CLARKMANAGER JONESMANAGER EMP EMPNO ENAME JOB... DEPTNO 7839KINGPRESIDENT CLARKMANAGER MILLERCLERK 10

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)];

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

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';

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

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

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

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.

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 FORD SMITH SCOTT ADAMS

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%';

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

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

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

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>= AND job='CLERK'; EMPNO ENAME JOB SAL ADAMS CLERK MILLER CLERK 1300

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>= OR job='CLERK'; EMPNO ENAME JOB SAL KING PRESIDENT BLAKE MANAGER CLARK MANAGER JONES MANAGER MARTIN SALESMAN rows selected.

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 WHERE ename NOT LIKE ’%A%’... WHERE comm IS NOT NULL

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

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;

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;

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 DEC-80 ALLEN SALESMAN FEB rows selected.

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 JAN-83 SCOTT ANALYST DEC-82 MILLER CLERK JAN-82 JAMES CLERK DEC-81 FORD ANALYST DEC-81 KING PRESIDENT NOV-81 MARTIN SALESMAN SEP rows selected.

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 SMITH JAMES ADAMS MARTIN WARD MILLER TURNER rows selected.

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 CLARK MILLER FORD rows selected.

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]];