Download - 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’
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
n
mois
de
l’argument.
Add_months(’22‐
oct‐
08’,2)
’22‐
dec‐
08’
8/20/2019 fonctions_sql1
http://slidepdf.com/reader/full/fonctionssql1 3/4
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.