Вы находитесь на странице: 1из 6

Rappels SQL

1 Dfinition des donnes


1.1 Cration d'une table
CREATE TABLE table ( col1 type1, col2 type2 , )
table est le nom donn la nouvelle table.
col1, col2, sont les noms des colonnes.
type1, type2, sont les types des donnes contenues dans les colonnes.
CREATE TABLE table [ ( col1 type1, col2 type2 , ) ]
AS SELECT ...
table est le nom de la nouvelle table. Elle est dfinie sur les attributs et n-uplet rsultat de la requte select.

1.2 Modification de la structure


Il est possible de modifier la structure dune base de donnes existante :
ALTER TABLE table ADD (col1 type1, col2, type2)
ajoute les colonnes spcifies une table existante.
ALTER TABLE table MODIFY (col1 type1, col2 type2)
modifie la dfinition des colonnes spcifies.
ALTER TABLE table DROP col
supprime la colonne col.
Attention: certaines modification sur les tables ne seront pas acceptes (suppression d'un attribut appartenant
la cl primaire, certaines diminution de la capacit de contenance d'un type, etc...).

1.3 Contraintes dintgrit


Lors de la cration ou la modification de la structure dune table, il est possible de spcifier des contraintes
dintgrit c'est--dire des conditions que devront vrifier les enregistrements. Elles sont de deux types :

Contrainte sur une colonne : peut suivre la dfinition dune colonne.


Contrainte sur une table (une ou plusieurs colonnes) : apparat au mme niveau que les
dfinitions des colonnes.
CONSTRAINT nom_contrainte contrainte

dfinit et nomme une contrainte sur une ou plusieurs colonnes.


Les types de contraintes sont :
PRIMARY KEY (col1, col2,)
PRIMARY KEY

(contrainte sur une table)


(contrainte sur une colonne)

indique la cl primaire de la table. Aucune des colonnes de cette cl ne doit avoir une valeur NULL.

UNIQUE (col1, col2,)


UNIQUE

(contrainte sur une table)


(contrainte sur une colonne)

interdit quune colonne (ou la concatnation de plusieurs colonnes) contienne deux valeurs identiques.

FOREIGN KEY (col1, col2,) REFERENCES table [(col1,col2,)]


REFERENCES table [(col1)] [ON DELETE CASCADE]

(contrainte sur une table)


(contrainte sur une colonne)

indique que la concatnation de col1, col2, est une cl trangre faisant rfrence la concatnation de
col1, col2, de table. Si col1,col2, sont omises, la cl primaire de table est prise par dfaut.
par dfaut, on ne peut supprimer un n-uplet rfrenc par d'autres n-uplet. Si on rajoute la clause on "delete
cascade", les n-uplets rfrenant sont supprims.

CHECK (condition)
donne une condition devant tre vrifie par une ou plusieurs colonnes.

1.4 Suppression d'une table


DROP TABLE table
supprime la dfinition dune table et par consquent lensemble des enregistrements quelle contient.

1.5 Exemple de cration de table


CREATE TABLE EMP (
EMPNO NUMBER(4) PRIMARY KEY,
ENAME CHAR(10) NOT NULL,
AGE NUMBER(4),
JOB CHAR(9),
MGR NUMBER(4),
DEPTNO NUMBER(2) REFERENCES DEPT,
CONSTRAINT MGR_FK FOREIGN KEY (MGR) REFERENCES EMP (EMPNO),
CONSTRAINT AGE_CK CHECK ( AGE BETWEEN 18 AND 70 ) );

2 Manipulation des donnes


2.1 Insertion
INSERT INTO table [(col1, col2,)] VALUES ( val1, val2,)
INSERT INTO table [(col1, col2,)] SELECT
insre un nouvel enregistrement dans table. Si (col1, col2,) est omise, lordre utilis par dfaut est celui
spcifi lors de la cration de la table. A linverse, si cette liste est donne, les colonnes ny figurant pas
auront la valeur NULL.

2.2 Mise jour


UPDATE table SET col1 = expr1, col2 = expr2,WHERE prdicat
UPDATE table SET (col, col2,) = (SELECT) WHERE prdicat
modifie les enregistrements de table qui vrifient prdicat. Si prdicat est omis, tous les enregistrements sont
mis jour.

2.3 Suppression
DELETE FROM table WHERE prdicat
supprime les enregistrements de table qui vrifient prdicat. Si prdicat est omis, tous les enregistrements
sont supprims.

3 Interrogation dune base


La syntaxe gnrale est la suivante :
SELECT FROM [WHERE ][GROUP BY [HAVING ]] [ORDER BY]

3.1 SELECT
SELECT [DISTINCT] expr1 [[AS] nom1], expr2 [[AS] nom2],
ralise une projection.
Exrp1, expr2, indiquent quelles expressions devront tre renvoyes, par exemple des noms de champs. Sil
y a une ambigut (cas de deux tables contenant des champs de mme nom), il est ncessaire de prfixer le
nom du champ par celui de la table et dun point.
Nom1, nom2, sont des noms facultatifs qui constitueront les titres des colonnes renvoyes.
Le mot cl DISTINCT permet de supprimer les doublons.

3.2 FROM
FROM table1 [alias1], table2 [alias2],
donne la liste des tables participant linterrogation. alias1, alias2, sont des alias facultatifs attribus aux
tables pour le temps de la requte. Quand une table se voit attribuer un alias, elle nest plus reconnue sous
son nom dorigine dans la requte.

3.3 WHERE
WHERE prdicat
permet deffectuer une restriction, c'est--dire de spcifier quels enregistrements slectionner dans une table
ou un produit cartsien de tables.
3.3.1 Prdicats simples
Un prdicat simple est la comparaison de plusieurs expressions au moyen dun oprateur logique:
WHERE
WHERE
WHERE
expr2)
WHERE
WHERE

expr1 = / != / < / > / <= / >= expr2


expr1 BETWEEN expr2 AND expr3
expr1 [NOT] LIKE expr2

(oprateurs classiques)
(appartenance un intervalle bornes incluses)
(utilisation des caractres joker _ et % dans

expr1 [NOT] IN (expr2,expr3,)


expr1 IS [NOT] NULL

(appartenance la liste dexpressions)


(valeur NULL)

3.3.2 Prdicats composs


Les oprateurs logiques AND et OR permettent de combiner plusieurs prdicats. AND est prioritaire par
rapport OR mais lutilisation de parenthses permet de modifier lordre dvaluation.

3.3.3 Sous-requtes
Le critre de recherche employ dans une clause WHERE (lexpression droite dun oprateur de
comparaison) peut tre le rsultat dun SELECT. Dans le cas des oprateurs classiques, la sousinterrogation
ne doit ramener quune ligne et une colonne. Elle peut ramener plusieurs lignes la suite de loprateur
[NOT] IN, ou la suite des oprateurs classiques moyennant lajout dun mot cl (ANY ou ALL).
ANY : la comparaison est vraie si elle est vraie pour au moins un lment de lensemble (donc fausse si
lensemble des enregistrements est vide).
ALL : la comparaison est vraie si elle est vraie pour tous les lments de lensemble (donc vraie si
lensemble des enregistrements est vide).
WHERE expr1 = / != / < / > / <= / >= expr2 ALL (SELECT)
WHERE expr1 = / != / < / > / <= / >= expr2 ANY (SELECT)
3.4 Jointures
3.4.1 Jointures naturelles
SELECT expr1, expr2,
FROM table1, table2
WHERE table1.champ1 = table2.champ2
Lorsque la clause FROM contient plusieurs tables, on en obtient le produit cartsien. La clause WHERE
permet deffectuer une restriction. Si cette clause est une galit, on dit que lon ralise une jointure naturelle
ou qui-jointure.

3.4.2 Jointures interne


SELECT table.expr1, alias.expr2
FROM table, table alias
WHERE table.champ1 = alias.champ2
Il sagit dune jointure naturelle mettant deux fois en jeu la mme table. Ceci permet de rassembler venant
dun enregistrement dune table avec les informations venant dun autre enregistrement. A noter quil est
obligatoire de spcifier deux fois la table source dans la clause FROM, en attribuant un alias lune des
occurrences.

3.4.3 Jointures externes


SELECT expr1, expr2,
FROM table1 LEFT / RIGHT / FULL OUTER JOIN table2
ON table1.champ1 = table2.champ2
Lorsquon effectue une jointure naturelle sur deux tables, il est possible quun enregistrement dune table
nait pas de correspondant dans lautre. Dans ce cas, lenregistrement en question nest pas affich. La
jointure externe permet de rsoudre ce problme par lajout de lignes fictives, qui ralisent la correspondance
avec les enregistrements de lautre table nayant pas de correspondant rel (LEFT OUTER JOIN correspond
lajout denregistrements fictifs dans table1).

3.5 GROUP BY
GROUP BY expr1, expr2,
permet de subdiviser la table en groupes, chaque groupe tant lensemble des enregistrements ayant une
valeur commune pour les expressions spcifies. Les champs de la clause SELECT doivent alors tre des
fonctions agrgat ou des expressions figurant dans la clause GROUP BY.
Quelques fonctions d'agrgat: COUNT, SUM, MIN, MAX, AVG, VARIANCE.

3.6 HAVING
HAVING prdicat
sert prciser quels groupes doivent tre slectionns. Cette clause se place aprs GROUP BY et le prdicat
ne peut porter que sur des fonctions agrgat ou des expressions figurant dans la clause GROUP BY.

3.7 ORDER BY
ORDER BY expr1 [DESC], expr2 [DESC],
classe les enregistrements retourns selon lordre croissant de expr1 puis expr2. La clause facultative DESC
inverse lordre de classement. Pour prciser lors dun tri sur quelle expression va porter le tri, il est possible
de donner sa position dans la liste des expressions de la clause SELECT ou encore le nom quon lui a
attribu.

3.8 Les oprateurs ensemblistes


requte1 UNION / INTERSECT / MINUS requte2
permettent de raliser des oprations ensemblistes sur les rsultats de plusieurs interrogations (union,
intersection, diffrence). Les champs renvoys par les requtes impliques doivent tre identiques. Les
oprations sont values de gauche droite mais lutilisation de parenthses permet de modifier cet ordre.

Вам также может понравиться

  • Indication:: Projet 3
    Indication:: Projet 3
    Документ1 страница
    Indication:: Projet 3
    Koki Ou
    Оценок пока нет
  • EX1
    EX1
    Документ1 страница
    EX1
    Koki Ou
    Оценок пока нет
  • Indication:: Projet 7
    Indication:: Projet 7
    Документ1 страница
    Indication:: Projet 7
    Koki Ou
    Оценок пока нет
  • EX6
    EX6
    Документ1 страница
    EX6
    Koki Ou
    Оценок пока нет
  • EX2
    EX2
    Документ3 страницы
    EX2
    Koki Ou
    Оценок пока нет
  • EX1
    EX1
    Документ1 страница
    EX1
    Koki Ou
    Оценок пока нет
  • Apropos Du Cours
    Apropos Du Cours
    Документ2 страницы
    Apropos Du Cours
    Koki Ou
    Оценок пока нет
  • MCD Voitures
    MCD Voitures
    Документ1 страница
    MCD Voitures
    hadrati
    100% (1)
  • Correction TD1 PDF
    Correction TD1 PDF
    Документ8 страниц
    Correction TD1 PDF
    Koki Ou
    Оценок пока нет
  • Le Modele EA
    Le Modele EA
    Документ12 страниц
    Le Modele EA
    babougs
    Оценок пока нет
  • Correction TD1 PDF
    Correction TD1 PDF
    Документ8 страниц
    Correction TD1 PDF
    Koki Ou
    Оценок пока нет
  • Correction TD1 PDF
    Correction TD1 PDF
    Документ8 страниц
    Correction TD1 PDF
    Koki Ou
    Оценок пока нет
  • CPGE Programme2010
    CPGE Programme2010
    Документ10 страниц
    CPGE Programme2010
    Fouad Mysterieux
    Оценок пока нет
  • Logique Floue
    Logique Floue
    Документ37 страниц
    Logique Floue
    Koki Ou
    Оценок пока нет
  • Apprentissage II
    Apprentissage II
    Документ23 страницы
    Apprentissage II
    Koki Ou
    Оценок пока нет
  • Memo Commandes Shell
    Memo Commandes Shell
    Документ2 страницы
    Memo Commandes Shell
    Koki Ou
    Оценок пока нет
  • Apprentissage II
    Apprentissage II
    Документ23 страницы
    Apprentissage II
    Koki Ou
    Оценок пока нет
  • Apprentissage II
    Apprentissage II
    Документ23 страницы
    Apprentissage II
    Koki Ou
    Оценок пока нет
  • Apprentissage II
    Apprentissage II
    Документ23 страницы
    Apprentissage II
    Koki Ou
    Оценок пока нет
  • Prob3-Ondes EM Plasma1 Corrigé
    Prob3-Ondes EM Plasma1 Corrigé
    Документ15 страниц
    Prob3-Ondes EM Plasma1 Corrigé
    Aymane ESSALIM
    Оценок пока нет
  • Cours Réseaux Mobiles
    Cours Réseaux Mobiles
    Документ94 страницы
    Cours Réseaux Mobiles
    Tig Ikr
    Оценок пока нет
  • TP1 Transformations Lentes Ou Rapides 2-Correction PDF
    TP1 Transformations Lentes Ou Rapides 2-Correction PDF
    Документ5 страниц
    TP1 Transformations Lentes Ou Rapides 2-Correction PDF
    Ikram Chamixo
    Оценок пока нет
  • BENJILALI
    BENJILALI
    Документ77 страниц
    BENJILALI
    elhage
    Оценок пока нет
  • Szymanowska Le Murmure
    Szymanowska Le Murmure
    Документ10 страниц
    Szymanowska Le Murmure
    BARNIKOL
    Оценок пока нет
  • Systemes Electriques: Fascicule de Travaux Pratiques
    Systemes Electriques: Fascicule de Travaux Pratiques
    Документ27 страниц
    Systemes Electriques: Fascicule de Travaux Pratiques
    Mouna Ben Smida
    Оценок пока нет
  • CT1 CHAPITRE 1 Le MATERIAU TERRE
    CT1 CHAPITRE 1 Le MATERIAU TERRE
    Документ15 страниц
    CT1 CHAPITRE 1 Le MATERIAU TERRE
    Giser Takoust
    Оценок пока нет
  • Questionnaire 2017
    Questionnaire 2017
    Документ85 страниц
    Questionnaire 2017
    toto TOTOROTO
    Оценок пока нет
  • Fiche D'exercices N°2 - Notion de Fonction Dérivée
    Fiche D'exercices N°2 - Notion de Fonction Dérivée
    Документ1 страница
    Fiche D'exercices N°2 - Notion de Fonction Dérivée
    zelda wegrzyniak
    Оценок пока нет
  • Construire Des Tableaux de Bord Vraiment Utiles
    Construire Des Tableaux de Bord Vraiment Utiles
    Документ149 страниц
    Construire Des Tableaux de Bord Vraiment Utiles
    Sébastien Amet
    100% (2)
  • Les 10 Cles Du Developpement Personnel 1
    Les 10 Cles Du Developpement Personnel 1
    Документ28 страниц
    Les 10 Cles Du Developpement Personnel 1
    TAKAM
    Оценок пока нет
  • Webanalyse - Des Donnees A L'action - Antoine Denoix
    Webanalyse - Des Donnees A L'action - Antoine Denoix
    Документ218 страниц
    Webanalyse - Des Donnees A L'action - Antoine Denoix
    elric Noirtin
    Оценок пока нет
  • Initiation À La Prospection Aut2019
    Initiation À La Prospection Aut2019
    Документ4 страницы
    Initiation À La Prospection Aut2019
    Ali Guelmami
    Оценок пока нет
  • TP Hydropulseur
    TP Hydropulseur
    Документ4 страницы
    TP Hydropulseur
    cliorl
    Оценок пока нет
  • 16094361327
    16094361327
    Документ2 страницы
    16094361327
    Amadou Kamafily Diallo
    Оценок пока нет
  • Bilan Aphasie 2012 01
    Bilan Aphasie 2012 01
    Документ2 страницы
    Bilan Aphasie 2012 01
    Chiali Kawther
    100% (3)
  • POO en PHP5
    POO en PHP5
    Документ3 страницы
    POO en PHP5
    Bash Sumer
    Оценок пока нет
  • Presentation Entree en Relation
    Presentation Entree en Relation
    Документ36 страниц
    Presentation Entree en Relation
    Ismael Nguetsop
    Оценок пока нет
  • Dosgae Etalonnage Permanganate Corrige
    Dosgae Etalonnage Permanganate Corrige
    Документ2 страницы
    Dosgae Etalonnage Permanganate Corrige
    FERON
    Оценок пока нет
  • Elysun Kit 1800w
    Elysun Kit 1800w
    Документ14 страниц
    Elysun Kit 1800w
    Chakchouk MED WALID
    Оценок пока нет
  • Gaine Technique Gaz
    Gaine Technique Gaz
    Документ8 страниц
    Gaine Technique Gaz
    mohabentr
    Оценок пока нет
  • Chasse Shotshells
    Chasse Shotshells
    Документ12 страниц
    Chasse Shotshells
    873258
    Оценок пока нет
  • Credibilité
    Credibilité
    Документ132 страницы
    Credibilité
    Assia Belhouchet
    Оценок пока нет
  • S1
    S1
    Документ3 страницы
    S1
    Mawoussi Afeke
    Оценок пока нет
  • M'Hamed Issiakhem
    M'Hamed Issiakhem
    Документ257 страниц
    M'Hamed Issiakhem
    Adel Benzema
    Оценок пока нет
  • Geom
    Geom
    Документ28 страниц
    Geom
    Ilyasse Lemezali
    Оценок пока нет
  • Medjour
    Medjour
    Документ16 страниц
    Medjour
    nada
    Оценок пока нет
  • CRM en B To B
    CRM en B To B
    Документ41 страница
    CRM en B To B
    echnagesecr
    Оценок пока нет
  • R2AM - PDF Version 1 PDF
    R2AM - PDF Version 1 PDF
    Документ5 страниц
    R2AM - PDF Version 1 PDF
    Élia Bylka
    Оценок пока нет
  • Histoire de L'électricité
    Histoire de L'électricité
    Документ2 страницы
    Histoire de L'électricité
    heneman
    100% (3)