Download - fonctions_sql1

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.


Top Related