fonctions_sql1

4
8/20/2019 fonctions_sql1 http://slidepdf.com/reader/full/fonctionssql1 1/4 Institut Supérieur de Gestion  – Département Informatique  – Module Base de Données ‐ 3 IAG et 2 LFIG Page 1 ORACLE-SQL : Les fonctions de lignes 1.  Les fonctions de caractères : Syntaxe Définition Exemple LOWER(arg)  Renvoie l’argument  en minuscule LOWER(‘SMITH’)   ‘smith’  UPPER(arg)  Renvoie l’argument  en majuscule.  UPPER(‘smith’)   ‘SMITH’  INITCAP(arg)  Met en majuscule la première lettre de chaque mot, les lettres  restantes  de chaque mot  sont mises en minuscule.  INITCAP(‘SMITH’)   ‘Smith’  CONCAT(arg1,arg2)  Renvoie  la  concaténation  des  deux  arguments.  Equivalent  à  ||  CONCAT(‘SMITH’,’  est  Clerk.’)    ‘SMITH  est  Clerk.’  SUBSTR(arg,m[,n])  Retourne la souschaîne de l’argument  qui commence de la m ème  position et de longueur  n SUBSTR(‘ORACLE’,2,4) ‘RACL’ SUBSTR(‘ORACLE’,2) ‘RACLE’ LENGTH(arg)  Retourne la taille de l’argument  en nombre de caractères LENGTH(‘SQL’) 3 INSTR(arg,cc[,m][,n])  Retourne la position de la n ème  occurrence de cc dans l’argument  en commençant par la position m.  Par défaut  m et n sont mis à 1. INSTR(‘ABCAB’,’AB’,2,2) 0 ; INSTR(‘ABCAB’,’AB’,2,1) 4 INSTR(‘ABCAB’,’BC’) 2 LPAD(arg,m[,cc])  Rembourre  l’argument  à gauche plusieurs fois par les caractères de cc  jusqu’à ce que la taille de la chaîne retournée  soit de m.  Par défaut,  cc est l’espace LPAD(‘SQL’,8,‘or’)   ‘ororoSQL’  RPAD(arg,m[,cc])  Rembourre  l’argument  à droite plusieurs fois par les caractères de cc  jusqu’à ce que la taille de la chaîne retournée  soit de m. RPAD(‘SQL’,8,’or’)   ‘SQLororo’  LTRIM (arg,cc)  Renvoie l’argument  dont elle élague chaque caractère de cc si ce caractère se trouve à son extrémité  gauche.  LTRIM(‘OPERATION’,‘ASPO’)  ‘ERATION’ RTRIM(arg,cc)  Renvoie l’argument  duquel elle élague chaque caractère de cc si ce caractère se trouve à son extrémité  droite RTRIM(‘OPERATION’,’ONI’)  ‘OPERAT’ TRIM([LEADING|TAILING|BOTH ] cc FROM arg) si LEADING est précisé alors la fonction est équivalente  à LTRIM, si TAILING est  précisé  alors  la  fonction  est  équivalente  à  RTRIM  sinon  avec  BOTH,  l’élagage  se fait des deux cotés. BOTH est considéré  par défaut.  REPLACE (arg,cc1[,cc2])  Remplace la sous chaîne cc1 par la sous chaîne cc2 dans l’argument.  Si cc2 est omise alors toutes les occurrences  de cc1 sont enlevées de l’argument.  REPLACE(‘SMITH’,‘MI’,‘ABC’)  ‘SABCTH’  REPLACE (‘SMITH’,  ‘AX’,  ‘ABC’) ‘SMITH’  REPLACE (‘SMITH’,  ‘MI’) ‘STH’ 

Upload: chimere-poisson

Post on 07-Aug-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: fonctions_sql1

8/20/2019 fonctions_sql1

http://slidepdf.com/reader/full/fonctionssql1 1/4

Institut Supérieur de Gestion  – Département Informatique  – Module Base de Données ‐ 3 IAG et 2 LFIG  Page 1 

ORACLE-SQL : Les fonctions de lignes

1. 

Les fonctions de caractères :

Syntaxe  Définition  Exemple 

LOWER(arg)  Renvoie l’argument en minuscule  LOWER(‘SMITH’)   ‘smith’ 

UPPER(arg)  Renvoie l’argument en majuscule.  UPPER(‘smith’)   ‘SMITH’ 

INITCAP(arg) Met en majuscule la première lettre de chaque mot, les lettres restantes de 

chaque mot sont mises en minuscule. INITCAP(‘SMITH’)  ‘Smith’ 

CONCAT(arg1,arg2)   Renvoie la concaténation des deux arguments. Equivalent à ||  CONCAT(‘SMITH’,’ est Clerk.’)  ‘SMITH est Clerk.’ 

SUBSTR(arg,m[,n]) Retourne la sous‐chaîne de l’argument qui commence de la m

ème position et 

de longueur n 

SUBSTR(‘ORACLE’,2,4)‘RACL’ 

SUBSTR(‘ORACLE’,2)‘RACLE’ 

LENGTH(arg)  Retourne la taille de l’argument en nombre de caractères  LENGTH(‘SQL’)3 

INSTR(arg,cc[,m][,n])  Retourne la position de la n

ème occurrence de cc dans l’argument en 

commençant par la position m. Par défaut m et n sont mis à 1. 

INSTR(‘ABCAB’,’AB’,2,2)0 ; INSTR(‘ABCAB’,’AB’,2,1)4 

INSTR(‘ABCAB’,’BC’)2 

LPAD(arg,m[,cc])  

Rembourre l’argument à gauche plusieurs fois par les caractères de cc 

 jusqu’à ce que la taille de la chaîne retournée soit de m. Par défaut, cc est 

l’espace 

LPAD(‘SQL’,8,‘or’)  ‘ororoSQL’ 

RPAD(arg,m[,cc])  Rembourre l’argument à droite plusieurs fois par les caractères de cc  jusqu’à 

ce que la taille de la chaîne retournée soit de m. RPAD(‘SQL’,8,’or’)  ‘SQLororo’ 

LTRIM (arg,cc) Renvoie l’argument dont elle élague chaque caractère de cc si ce caractère 

se trouve à son extrémité gauche. LTRIM(‘OPERATION’,‘ASPO’)  ‘ERATION’ 

RTRIM(arg,cc) Renvoie l’argument duquel elle élague chaque caractère de cc si ce caractère 

se trouve à son extrémité droite RTRIM(‘OPERATION’,’ONI’)  ‘OPERAT’ 

TRIM([LEADING|TAILING|BOTH

] cc FROM arg) 

si LEADING est précisé alors la fonction est équivalente à LTRIM, si TAILING 

est précisé alors la fonction est équivalente à RTRIM sinon avec BOTH, l’élagage se fait des deux cotés. BOTH est considéré par défaut. 

REPLACE (arg,cc1[,cc2])  Remplace la sous chaîne cc1 par la sous chaîne cc2 dans l’argument. Si cc2 

est omise alors toutes les occurrences de cc1 sont enlevées de l’argument. 

REPLACE(‘SMITH’,‘MI’,‘ABC’) ‘SABCTH’ 

REPLACE (‘SMITH’, ‘AX’, ‘ABC’) ‘SMITH’ 

REPLACE (‘SMITH’, ‘MI’) ‘STH’ 

Page 2: fonctions_sql1

8/20/2019 fonctions_sql1

http://slidepdf.com/reader/full/fonctionssql1 2/4

Institut Supérieur de Gestion  – Département Informatique  – Module Base de Données ‐ 3 IAG et 2 LFIG  Page 2 

2.  Les fonctions numériques :

Syntaxe 

Définition 

Exemple ROUND(arg,n)  Arrondit l’argument à la précision n, c‐à‐d à n chiffres décimaux. Si n=0, alors 

l’argument est arrondi sur les unités, sinon (cas où n<0) l’argument est 

arrondit sur le |n|+1ème

 chiffre à gauche de la virgule 

ROUND(46.8)  47 

ROUND(46.862,1)  46.9 

ROUND(46.862,2)  46.86 

ROUND(46.862,‐1)  50 

ROUND(51.342,‐2)  100 ; ROUND(49,‐2)  0 

TRUNC(arg,n)  Tronque l’argument à la précision n.  TRUNC(46.862,1)  46.8 

TRUNC(46.862,2)  46.86 

TRUNC(46.862,‐1)  40 

TRUNC(51.342,‐2)  0 ;  TRUNC(49,‐2)  0 

CEIL(arg)  Retourne le plus petit entier supérieur à l’argument.  CEIL(99.9)  100 

CEIL(‐11.1)   ‐11 

FLOOR(arg)  Retourne le plus grand entier inférieur à l’argument.  FLOOR(99.9)  99 

FLOOR(‐11.1)   ‐12 

POWER(arg,n)  Retourne l’argument à la puissance n. 

EXP(arg)  Exponentielle de l’argument. 

SQRT(arg)  Racine carré de l’argument. 

SIGN(arg) ‐1 si arg <0, 1

 si arg>0, 0

 sinon 

ABS(arg)  Valeur absolue de l’argument. 

MOD(arg, n)  Argument modulo n. 

LOG(m,arg)  Logarithme de base m de l’argument. 

SIN(arg)  Sinus de l’argument. 

COS(arg)  Cosinus de l’argument. 

3.  Les opérations et les fonctions de Date :

Syntaxe  Définition  Exemple 

SYSDATE  Retourne la date et l’heure système.  SELECT SYSDATE FROM DUAL;  ‘21‐OCT‐08 12:11’ 

arg+n Ajoute ou soustrait n  jours l’argument (selon le signe de n) et 

retourne la date résultante. SYSDATE + 1  ’22‐OCT‐08 12 :11’ 

arg1  – arg2  Retourne le nombre de  jours en différence entre deux dates.  ’22‐OCT‐08 12 :11’  – ’21‐OCT‐08 00 :01’  1.5 

arg+n/24  Ajoute n heures à la date.  ’21‐OCT‐08 00 :01’+1.5  ’22‐OCT‐08 12 :11’ 

MONTHS_BETWEEN(arg1,arg2)   Retourne le nombre de mois en différence entre deux dates.  months_between('22‐oct‐08','20‐sep‐08') 1.06 

ADD_MONTHS(arg,n) 

Retourne 

la 

date 

qui 

survient 

après 

mois 

de 

l’argument. 

Add_months(’22‐

oct‐

08’,2)  

’22‐

dec‐

08’ 

Page 3: fonctions_sql1

8/20/2019 fonctions_sql1

http://slidepdf.com/reader/full/fonctionssql1 3/4

Page 4: fonctions_sql1

8/20/2019 fonctions_sql1

http://slidepdf.com/reader/full/fonctionssql1 4/4

Institut Supérieur de Gestion  – Département Informatique  – Module Base de Données ‐ 3 IAG et 2 LFIG  Page 4 

Syntaxe  Définition  Exemple 

VSIZE(arg) Retourne en nombre de bytes (octets) la taille de la colonne ou de la 

valeur. 

Remarques générales :-  Le langage SQL présente une panoplie importante de fonctions. Chaque SGBD étend sa version du langage en ajoutant ses propres fonctions.Ci-dessus, les fonctions spéciaux à ORACLE… certaines d’entre elles ne fonctionnent pas dans d’autres SGBDs.

-  Une fonction de ligne retourne un unique résultat pour chaque ligne de la table (si cette dernière satisfait la clause WHERE au cas où elleexiste).

-  Un argument peut être une colonne, une constante, une fonction ou une opération. L’argument doit respecter le type de données prescrit dansla syntaxe de la fonction.

-  La table DUAL est une table système qui inclut une seule ligne. Elle est utilisée pour l’affichage de fonctions opérant sur des constantes pour

ne pas itérer l’affichage d’un même résultat autant de fois que de lignes dans une table utilisateur.-  Les formats de date sont disponibles dans l’annexe B.