T ECHNOLOGIES O RACLE Ordres de base © sebvita.com.

Slides:



Advertisements
Présentations similaires
Support.ebsco.com Guide dUtilisation Création dune collection locale.
Advertisements

L’optimiseur ORACLE L’optimiseur ORACLE suit une approche classique: Génération de plusieurs plans d’exécution. Estimation du coût de chaque plan généré.
Manipulation des données dans SQL
Georges Gardarin 1 LE LANGAGE DE REQUETES SQL l Origines et Evolutions l SQL1 86: la base l SQL1 89: l'intégrité l SQL2 92: la nouvelle norme l SQL3 98:
Les Requêtes S.Q.L « Structured Query Language)
T ECHNOLOGIES O RACLE Création et gestion des objets © sebvita.com.
Année universitaire Système dinformation Le SQL (Structured Query Language) langage dinterrogation dune base de données.
LE LANGAGE SQL : LDD La création de tables L’ordre CREATE CREATE TABLE nom_de_table (Nom_colonne Type_colonne, Nom_colonne Type_colonne,
Mise en Forme des Résultats avec SQL*Plus
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
Les requêtes La Requête est une méthode pour afficher les enregistrements qui répondent à des conditions spécifiques. La requête est donc un filtre.
LMD: Langage de Manipulation de Données
Le Langage d’Interrogation de Données LID Multi-table Jointures
Base de données relationnelle et requêtes SQL
L'Ordre SELECT Élémentaire
10 Copyright © Oracle Corporation, Tous droits réservés. Autres concepts relatifs aux déclencheurs.
Regrouper les Données avec les Fonctions de Groupe
LE LANGAGE SQL Langage de manipulation de données (LMD)
Langages du Web Sémantique
T ECHNOLOGIES O RACLE Manipulation des données © sebvita.com.
Le PHP – la base Les commentaires */ ?>. Le PHP – le terminateur dinstruction Le point virgule Le point virgule est utilisé pour terminer une"; echo instruction.
SELECT {* | Expression [Alias] [,...] } FROM Table [WHERE Condition] [ORDER BY { Expression | Alias } [ ASC | DESC ] [NULLS FIRST | NULLS LAST ] [,...]
Cours N°2 Base de Données & Langage SQL
1 LE LANGAGE DE REQUETES SQL Origines et Evolutions SQL1 86: la base SQL1 89: l'intégrité.
EPID-CPI-ISAIP Philippe Bancquart - mise à jour 24/02/ page 1 Procédures stockées CPI-SQLServer.
SQL Injection Réalisée par: BEN NASR Houssem GMATI Idriss HADDAD Mohamed Aymen HAKIM Youssef.
Structures de données IFT-2000 Abder Alikacem La librairie STL du C++ Département dinformatique et de génie logiciel Édition Septembre 2009.
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 SQL: Contraintes et Triggers Chapitre 5,
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
1 CSI 2532 Lab3 6 Février 2012 Programmation avancée SQL.
Christine Bonnet SOURCES : « Samples » dOracle, « Oracle 8 » R. Chapuis PRO*C – C ++
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
SQL partie 3. SQL est un langage de définition de données SQL est un langage de définition de données (LDD), c'est-à-dire qu'il permet de créer des tables.
Le langage SQL LDD : Langage de Définition de Données
 CREATE TABLE  DROP TABLE  ALTER TABLE  INSERT  UPDATE  DELETE  SELECT interrogation 2 Instruction de mise à jour structure.
Créer des déclencheurs de base de données
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.
Créer des packages.
 Syntaxe du langage PHP
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
1 PHP 5 Notions fondamentales (cours #5) Formation continue – Cégep de Sainte-Foy.
Sous-Interrogations.
Module 7 : Utilisation de requêtes élaborées
DEFINITION DES DONNEES : schéma conceptuel. Schéma conceptuel instructiondescription CREATE TABLEcréation d'une relation ALTER TABLEmodification de la.
Sélection de colonnes (la projection)
Gérer les rôles.
Copyright  Oracle Corporation, Tous droits réservés. 2 Sélection et Tri des Lignes Retournées par un SELECT.
Création et Gestion de Tables
3 Copyright © Oracle Corporation, Tous droits réservés. Créer des fonctions.
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.
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 :
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 5 -- Le Langage de Définition de Données ou la manœuvre de la structure de la base -- Le Langage de Manœuvre de Données.
1 Les bases de données Séance 6 L ’extraction de données Le SELECT.
Langage de manipulation de données (LMD)
Manipulation D’Une Base De Données
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.
7 Copyright © 2004, Oracle. Tous droits réservés. Utiliser les opérateurs ensemblistes.
D Copyright © 2004, Oracle. Tous droits réservés. Utiliser SQL*Plus.
Transcription de la présentation:

T ECHNOLOGIES O RACLE Ordres de base © sebvita.com

Objectifs En suivant ce cours, vous serez capable : Dexécuter un ordre SELECT de base De limiter et trier les lignes retournées par une requête © sebvita.com

Ordre SELECT © sebvita.com

Lordre SELECT ? Syntaxe : SELECT liste les colonnes qui sont affichées FROM indique la table doù sont issues les colonnes © sebvita.com SELECT *|{[DISTINCT] column|expression [alias],...} FROM table;

Lordre SELECT ? Sélectionner toutes les colonnes dune table © sebvita.com SELECT * FROM departments;

Lordre SELECT ? Sélectionner certaines colonnes dune table © sebvita.com SELECT department_id, location_id FROM departments;

Lordre SELECT ? Directives Non sensibles à la casse Écrits sur une ou plusieurs lignes Mots clés ne peuvent être abrégés ou coupés sur plusieurs lignes Clauses placées sur de nouvelles lignes Indentation du code Requêtes se terminent par un point-virgule © sebvita.com

Expressions arithmétiques Operateur Description + Add - Subtract Multiply Divide * / © sebvita.com

Expressions arithmétiques SELECT last_name, salary, salary FROM employees; © sebvita.com

Expressions arithmétiques SELECT last_name, salary, 12*salary+100 FROM employees; SELECT last_name, salary, 12*(salary+100) FROM employees; © sebvita.com

Expressions arithmétiques Définir les valeurs NULL Une valeur NULL est indisponible, non assignée, inconnue ou inutilisable Ce nest pas comme un zéro ou un espace SELECT last_name, job_id, salary, commission_pct FROM employees; © sebvita.com

Expressions arithmétiques Utiliser les valeurs NULL Une expression arithmétique qui contient une valeur NULL retourne NULL SELECT last_name, 12*salary*commission_pct FROM employees; © sebvita.com

Les alias de colonnes Changent les entêtes de colonnes Sont utiles avec les calculs Suivent directement le nom de la colonne (ou le mot clé AS ) Nécessitent des doubles quotes (" ") si contient un espace, un caractère spécial ou est sensible à la casse © sebvita.com

Les alias de colonnes SELECT last_name AS name, commission_pct comm FROM employees; SELECT last_name "Name", salary*12 "Annual Salary" FROM employees; © sebvita.com

Opérateur de concaténation Lie les colonnes ou chaînes de caractères à dautres colonnes Se présente avec deux barres ( || ) Crée une colonne à laffichage SELECT last_name || job_id AS "Employees" FROM employees; © sebvita.com

Chaînes de caractères littérales Un littéral est un caractère, un nombre ou une date qui est inclus dans un SELECT Les dates et caractères littéraux doivent être entre simples quotes (' ') Chaque chaîne de caractères est affichée une fois pour chaque ligne retournée © sebvita.com

Chaînes de caractères littérales SELECT last_name || ' is a ' || job_id AS "Employee Details" FROM employees; © sebvita.com

Opérateur de quote alternative Spécifie son propre délimiteur SELECT department_name || q'[, it's assigned Manager Id: ]' || manager_id AS "Department and Manager" FROM departments; © sebvita.com

Lignes dupliquées Par défaut, toutes les lignes sont affichées, même les doublons SELECT department_id FROM employees; SELECT DISTINCT department_id FROM employees; © sebvita.com

Afficher la structure dune table DESCRIBE employees DESC[RIBE] tablename Exemple : © sebvita.com

V OUS AVEZ DES QUESTIONS ?

Ordre SELECT © sebvita.com

Introduction to SQL*Plus © sebvita.com

Commandes dédition Le buffer © sebvita.com

Commandes dédition Ouvre le bloc notes pour modifier le SQL Bloque lenvironnement de travail afiedt.buf ne peut contenir dordres SQL*Plus Pour ajouter du SQL*Plus, utiliser un script SQL ED[IT] © sebvita.com

Commandes déditions Liste non exhaustive A[PPEND] text C[HANGE] / old / new CL[EAR] BUFF[ER] CL[EAR] SCR[EEN] DEL DEL n DEL m n I[NPUT] I[NPUT] text L[IST] L[IST] n L[IST] m n R[UN] n n text 0 text © sebvita.com

Commandes dédition SQL> LIST 1 SELECT last_name 2* FROM employees SQL> 1 1* SELECT last_name SQL> A, job_id 1* SELECT last_name, job_id SQL> L 1 SELECT last_name, job_id 2* FROM employees © sebvita.com

Commandes dédition SQL> L 1 SELECT * FROM employees SQL> c/employees/departments 1* SELECT * FROM departments SQL> L 1 SELECT * FROM departments © sebvita.com

Manipulation de fichiers Liste non exhaustive SAV[E] filename[.ext] [RE[PLACE]]|[APP[END]] GET filename[.ext] STA[RT] filename[.ext] ED[IT] [filename[.ext]] SPO[OL] filename[.ext] [OFF|OUT] EXIT © sebvita.com

Personnalisation denvironnement Utiliser SET pour contrôler la session Vérifier la configuration avec SHOW SET system_variable value SQL> SET ECHO ON SQL> SHOW ECHO echo ON © sebvita.com

Personnalisation denvironnement ARRAYSIZE {15 | n} FEEDBACK {6 | n | OFF | ON} HEADING {OFF | ON} LONG {80 | n | ON | text} LINESIZE {80 | n} PAGESIZE {14 | n} SQL> SET HEADING OFF SQL> SHOW HEADING heading OFF © sebvita.com

Commandes de formatage COL[UMN] [column option] TTITLE [text | OFF | ON] BTITLE [text | OFF | ON] BREAK [ON report_element] © sebvita.com

Commandes de formatage Pour contrôler laffichage des colonnes CLE[AR] : Supprime le formatage dune colonne HEA[DING] text : Change lentête FOR[MAT] format : Modifie laffichage dune colonne NOPRINT | PRINT : Afficher ou non une colonne NULL : Remplace les valeurs NULL COL[UMN] [{column | alias} [option]] © sebvita.com

Commandes de formatage Créer un entête de colonne Afficher la configuration de la colonne last_name Supprimer la configuration de la colonne COLUMN last_name HEADING 'Employee|Name' COLUMN salary JUSTIFY LEFT FORMAT $99, COLUMN manager FORMAT NULL 'No manager' COLUMN last_name COLUMN last_name CLEAR © sebvita.com

Commandes de formatage Modèles de formatage Élément 9 0 $ L., Résultat $1234 L ,234 Exemple $9999 L ,999 Description Represents a number Adds 0 Dollar currency Locale currency Decimal position Thousands separator © sebvita.com

Commandes de formatage La commande BREAK évite les doublons à laffichage BREAK ON job_id © sebvita.com

Commandes de formatage Afficher des entêtes de page Configurer les pieds de page TTI[TLE] [text | OFF | ON] TTITLE 'Salary|Report' BTITLE 'Confidential' © sebvita.com

Création de rapports Créer un fichier de script (.sql) pour générer un rapport 1.Créer et tester lordre SQL 2.Sauver lordre dans un fichier (.sql) 3.Modifier le fichier dans un éditeur de texte 4.Ajouter les commandes de formatage 5.Vérifier la présence du point virgule final 6.Supprimer les commandes de formatage après lordre 7.Sauvegarder 8.Charger et exécuter le script © sebvita.com

Création de rapports © sebvita.com

V OUS AVEZ DES QUESTIONS ?

Restriction et tri des données © sebvita.com

Restreindre les données « Récupère tous les employés du département 90 » © sebvita.com

Restreindre les données Restreindre les lignes retournées avec la clause WHERE La clause WHERE suit la clause FROM. SELECT *|{[DISTINCT] column|expression [alias],...} FROM table [WHERE condition(s)] ; © sebvita.com

Restreindre les données Utiliser la clause WHERE SELECT employee_id, last_name, job_id, department_id FROM employees WHERE department_id = 90 ; © sebvita.com

Restreindre les données Chaînes de caractères et dates : Doivent être en simples quotes (' ') Chaînes de caractères sensibles à la casse Dates sensibles au format Format de date par défaut – En français : DD/MM/RR – En américain : DD-MON-RR SELECT last_name, job_id, department_id FROM employees WHERE last_name = 'Whalen' ; © sebvita.com

Conditions de comparaison Operateur Signification = Égal à > Plus grand que Plus grand ou égal à Plus petit que >= < <= Plus petit ou égal à Non égal à Entre deux valeurs (inclues) <> BETWEEN … AND … IN (set) Correspond à une valeur de la liste Correspond à une recherche Est une valeur NULL LIKE IS NULL © sebvita.com

Conditions de comparaison Exemple : SELECT last_name, salary FROM employees WHERE salary <= 3000 ; © sebvita.com

Conditions de comparaison Utiliser la condition BETWEEN : SELECT last_name, salary FROM employees WHERE salary BETWEEN 2500 AND 3500 ; Limite inférieureLimite supérieure © sebvita.com

Conditions de comparaison Utiliser la condition IN : SELECT employee_id, last_name, salary, manager_id FROM employees WHERE manager_id IN (100, 101, 201) ; © sebvita.com

Conditions de comparaison Utiliser la condition LIKE : La condition de recherche pour contenir des caractères littéraux ou des nombres – % représente zéro, un ou plusieurs caractères – _ représente un et un seul caractère SELECT first_name FROM employees WHERE first_name LIKE 'S%' ; © sebvita.com

Conditions de comparaison Utiliser la condition LIKE : SELECT first_name FROM employees WHERE first_name LIKE '_o%' ; © sebvita.com

Conditions de comparaison Utiliser lidentifiant ESCAPE : Permet de rechercher les caractères % et _ SELECT employee_id, job_id FROM employees WHERE job_id LIKE 'SA\_R%' ESCAPE '\'; © sebvita.com

Conditions de comparaison Utiliser la condition IS NULL : SELECT last_name, manager_id FROM employees WHERE manager_id IS NULL ; © sebvita.com

Conditions logiques Operateur Signification AND Returne TRUE si les deux conditions sont vraies OR Returne TRUE si au moins une des conditions est vraie Returne TRUE si la condition suivante est fausse NOT © sebvita.com

Conditions logiques Utiliser lopérateur AND : SELECT employee_id, last_name, job_id, salary FROM employees WHERE salary >= AND job_id LIKE '%MAN%'; © sebvita.com

Conditions logiques Utiliser lopérateur OR : SELECT employee_id, last_name, job_id, salary FROM employees WHERE salary >= OR job_id LIKE '%MAN%'; © sebvita.com

Conditions logiques Utiliser lopérateur NOT : SELECT last_name, job_id FROM employees WHERE job_id NOT IN ('IT_PROG', 'ST_CLERK', 'SA_REP'); © sebvita.com

Conditions logiques Règles de priorité Possibilité dutiliser les parenthèses Order Operators 1 Arithmetic operators 2 Concatenation operator Comparison conditions IS [ NOT ] NULL, LIKE, [ NOT ] IN [ NOT ] BETWEEN Not equal to NOT logical condition AND logical condition OR logical condition 9 © sebvita.com

Conditions logiques SELECT last_name, job_id, salary FROM employees WHERE job_id = 'SA_REP' OR job_id = 'AD_PRES ' AND salary > 15000; SELECT last_name, job_id, salary FROM employees WHERE (job_id = 'SA_REP' OR job_id = 'AD_PRES') AND salary > 15000; © sebvita.com

Tri des données Trier les lignes avec la clause ORDER BY : – ASC : ordre ascendant, par défaut – DESC : ordre descendant ORDER BY est la dernière clause du SELECT SELECT last_name, job_id, department_id, hire_date FROM employees ORDER BY hire_date; © sebvita.com

Tri des données Tri par ordre descendant Tri par les alias de colonnes Tri daprès plusieurs colonnes SELECT last_name, job_id, department_id, hire_date FROM employees ORDER BY hire_date DESC ; SELECT last_name, department_id, salary FROM employees ORDER BY department_id, salary DESC; SELECT employee_id, last_name, salary*12 annsal FROM employees ORDER BY annsal ; © sebvita.com

Variables de substitution... salary = ? department_id = ? last_name = ?... I want to query different values. © sebvita.com

Variables de substitution Utiliser les variables de substitution pour : – Stocker temporairement des valeurs – Simple « et commercial » (« & ») – Double « et commercial » (« && ») SELECT employee_id, last_name, salary, department_id FROM employees WHERE employee_id = &employee_num ; © sebvita.com

Variables de substitution © sebvita.com

Variables de substitution Pour les chaînes de caractères et les dates, utiliser des doubles quotes SELECT last_name, department_id, salary*12 FROM employees WHERE job_id = '&job_title'; © sebvita.com

Variables de substitution SELECT employee_id, last_name, job_id, &column_name FROM employees WHERE &condition ORDER BY &order_column ; © sebvita.com

Variables de substitution Utiliser le double « et commercial » pour réutiliser la valeur SELECT employee_id, last_name, job_id, &&column_name FROM employees ORDER BY &column_name ; © sebvita.com

Variables de substitution Utiliser DEFINE pour créer et assigner une valeur à une variable Utiliser UNDEFINE pour supprimer la variable DEFINE employee_num = 200 SELECT employee_id, last_name, salary, department_id FROM employees WHERE employee_id = &employee_num ; UNDEFINE employee_num © sebvita.com

Variables de substitution Utiliser la commande VERIFY pour afficher ou non les remplacements de la variable de substitution SET VERIFY ON SELECT employee_id, last_name, salary, department_id FROM employees WHERE employee_id = &employee_num; old 3: WHERE employee_id = &employee_num new 3: WHERE employee_id = 200 © sebvita.com

V OUS AVEZ DES QUESTIONS ?

Restriction et tri des données © sebvita.com

Résumé Restreindre les données Écrire un ordre SELECT de base Formater des rapports © sebvita.com Trier les données

Ressources © sebvita.com