Page personnelle : ne pas effacer.
Les fonctions SQL
Source : http://sqlpro.developpez.com/cours/sqlaz/fonctions/
Légende | |
---|---|
O | Oui |
N | Non |
Existe mais syntaxe hors norme | |
! | Même nom mais fonction différente |
Pas d'information (connue ou inconnue) |
Agrégation statistique
Description | Norme SQL | Paradox | Access | MySQL | PostGreSQL | SQL Server | Oracle | Interbase |
---|---|---|---|---|---|---|---|---|
Maximum | MAX | MAX | MAX | MAX | MAX | MAX | MAX | MAX |
Minimum | MIN | MIN | MIN | MIN | MIN | MIN | MIN | MIN |
Moyenne | AVG | AVG | AVG | AVG | AVG | AVG | AVG | AVG |
Nombre | COUNT | COUNT | COUNT | COUNT | COUNT | COUNT | COUNT | |
Somme | SUM | SUM | SUM | SUM | SUM | SUM | SUM | SUM |
Système
Description | Norme SQL | Paradox | Access | MySQL | PostGreSQL | SQL Server | Oracle | Interbase |
---|---|---|---|---|---|---|---|---|
Date courante | CURRENT_DATE | TODAY | CURRENT_DATE SYSDATE CURDATE | CURRENT_DATE | CURRENT_DATE SYSDATE | CURRENT_DATE | ||
Date et heure courantes | CURRENT_TIMESTAMP | NOW | NOW | CURRENT_TIMESTAMP NOW SYSDATE | CURRENT_TIMESTAMP NOW | CURRENT_TIMESTAMP GETDATE NOW | CURRENT_DATE SYSDATE | CURRENT_TIMESTAMP |
Heure courante | CURRENT_TIME | CURRENT_TIME SYSDATE CURTIME | CURRENT_TIME | SYSDATE | CURRENT_TIME | |||
Nom de la base de données courante | DATABASE | DATABASE | DATABASE | |||||
Utilisateur autorisé | SESSION_USER | SESSION_USER | SESSION_USER | |||||
Utilisateur courant | CURRENT_USER | USER | CURRENT_USER | CURRENT_USER USER | USER | USER | ||
Utilisateur système | SYSTEM_USER | SYSTEM_USER | SYSTEM_USER | |||||
Version du SGBDR | VERSION | VERSION |
Générales
Description | Norme SQL | Paradox | Access | MySQL | PostGreSQL | SQL Server | Oracle | Interbase |
---|---|---|---|---|---|---|---|---|
Conversion de données en chaîne | TO_CHAR | |||||||
Conversion en date | TO_DATE | TO_DATE | ||||||
Conversion en nombre | TO_NUMBER | |||||||
Fonction conditionnelle | DECODE | |||||||
Longueur | LENGTH | LENGTH | LENGTH | LENGTH DATALENGTH | LENGTH | |||
Longueur en octet | OCTET_LENGTH | OCTET_LENGTH | OCTET_LENGTH | |||||
Plus grande valeur | GREATEST | GREATEST | ||||||
Plus petite valeur | LEAST | LEAST | ||||||
Transtypage | CAST | CAST | CAST | CAST | CAST | CAST | CAST | |
Valeur non NULL | COALESCE | COALESCE IFNULL | NVL | |||||
Valeur NULL | NULLIF | OCTET_LENGTH |
Chaines de caractères
Description | Norme SQL | Paradox | Access | MySQL | PostGreSQL | SQL Server | Oracle | Interbase |
---|---|---|---|---|---|---|---|---|
Comparaison partielle insensible à la casse | ILIKE | |||||||
Comparaison partielle | LIKE (prédicat) | LIKE | LIKE | LIKE | LIKE | LIKE | LIKE | |
Concaténation | || CONCATENATE | || | CONCAT | CONCAT | || | CONCATENATE CONCAT + | || CONCAT | || |
Conversion de code en caractère ASCII | CHAR | CHAR | CHAR | |||||
Conversion de code en caractère UNICODE | NCHAR | |||||||
Conversion de données en chaîne | TO_CHAR | |||||||
Conversion de format de caractères | CONVERT | ! | CONVERT | CONVERT | ||||
Conversion de jeu de caractères | TRANSLATE | |||||||
Extraction d'une sous-chaîne | SUBSTRING | SUBSTRING | SUBSTRING | SUBSTRING | SUBSTR | |||
Génération d'espaces | SPACE | SPACE | SPACE | SPACE | ||||
Initiales en majuscule | INITCAP | INITCAP | ||||||
Longueur d'une chaîne en octets | CHAR_OCTET_LENGTH CHARACTER_OCTET_LENGTH | |||||||
Longueur d'une chaîne | CHAR_LENGTH CHARACTER_LENGTH | CHARACTER_LENGTH | CHAR_LENGTH CHARACTER_LENGTH | CHARACTER_LENGTH | ||||
Longueur maximum d'une chaîne | CHARACTER_MAXIMUM_LENGTH | |||||||
Mise en majuscule | UPPER | UPPER UCASE | UCASE | UPPER | UPPER UCASE | UPPER UCASE | UPPER | UPPER |
Mise en minuscule | LOWER | LOWER | LCASE | LOWER LCASE | LOWER | LOWER LCASE | LOWER LCASE | |
Position d'un motif dans une chaîne | PATINDEX | |||||||
Position d'une chaîne dans une autre | POSITION | LOCATE | INSTR LOCATE | INSTR LOCATE POSITION | POSITION | LOCATE | INSTR LOCATE | |
Remplacement de caractères | REPLACE | REPLACE | REPLACE | |||||
Remplissage à droite | RPAD | RPAD | RPAD | |||||
Remplissage à gauche | LPAD | LPAD | LPAD | |||||
Renversement | REVERSE | REVERSE | REVERSE | |||||
Substitution à une séquence de caractères | COLLATE | COLLATE | ||||||
Suppression des espaces inutiles à droite | RTRIM | RTRIM | RTRIM | RTRIM | RTRIM | |||
Suppression des espaces inutiles à gauche | LTRIM | LTRIM | LTRIM | LTRIM | LTRIM | LTRIM | ||
Suppression des espaces inutiles | TRIM | TRIM | TRIM | TRIM | TRIM |
Chaines de bits
Description | Norme SQL | Paradox | Access | MySQL | PostGreSQL | SQL Server | Oracle | Interbase |
---|---|---|---|---|---|---|---|---|
Longueur en bit | BIT_LENGTH | |||||||
ET pour bit logique | & | |||||||
OU pour bit logique | | | |||||||
OU EXCLUSIF pour bit logique | ^ |
Numériques
Description | Norme SQL | Paradox | Access | MySQL | PostGreSQL | SQL Server | Oracle | Interbase |
---|---|---|---|---|---|---|---|---|
Angle de sinus (arc-sinus) | ASIN | ASIN | ASIN | ASIN | ||||
Angle de tangente (arc-tangente) | ATAN | ATAN | ATAN | ATAN | ||||
Arrondi | ROUND | ROUND | ROUND | ROUND | ||||
Conversion de caractère en code ASCII | ASCII | ASCII | ASCII | ASCII | ASCII | |||
Conversion de caractère en code UNICODE | UNICODE | |||||||
Cosinus | COS | COS | COS | COS | COS | |||
Cotangente | COT | COT | COT | COT | ||||
Élévation à la puissance | POWER | POWER | POWER | POWER | ||||
Exponentielle | EXP | EXP | EXP | EXP | EXP | |||
Logarithme décimal | LOG10 | LOG10 | LOG10 | |||||
Logarithme en base n de m | LOG(n, m) | LOG(n, m) | ||||||
Logarithme népérien | LOG | LOG | LOG | LOG LN | ||||
Modulo | MOD | MOD | MOD | MOD | MOD | |||
Modulo | % | % | % | |||||
Opérateurs et parenthésage | + - * / ( ) | + - * / ( ) | ||||||
Pi | PI | PI | PI | PI | ||||
Racine carrée | SQRT | SQRT | SQRT | SQRT | ||||
Signe | SIGN | SIGN | SIGN | SIGN | SIGN | |||
Sinus | SIN | SIN | SIN | SIN | SIN | |||
Tangente | TAN | TAN | TAN | TAN | TAN | |||
Troncature | TRUNC TRUNCATE | TRUNCATE | TRUNCATE | TRUNCATE | TRUNC TRUNCATE | |||
Valeur absolue | ABS | ABS | ABS | ABS | ABS | |||
Valeur aléatoire | RAND | RAND | RAND | |||||
Valeur approchée basse | FLOOR | FLOOR | FLOOR | FLOOR | FLOOR | |||
Valeur approchée haute | CEILING | CEILING | CEILING |
Temporelles
Description | Norme SQL | Paradox | Access | MySQL | PostGreSQL | SQL Server | Oracle | Interbase |
---|---|---|---|---|---|---|---|---|
Âge | AGE | |||||||
Ajout d'intervalle à une date | ADDDATE DATE_ADD | |||||||
Ajout de date | DATEADD | |||||||
Année d'une date | YEAR | YEAR | YEAR | YEAR | ||||
Dernier jour du mois | LAST_DAY | |||||||
Durée | INTERVAL (opérations sur) | INTERVAL | ||||||
Extraction de l'heure | HOUR | HOUR | HOUR | |||||
Extrait les secondes | SECOND | SECOND | SECOND | |||||
Formatage de date | DATE_FORMAT | |||||||
Jour d'une date | DAY | |||||||
Jour dans l'année | DAYOFYEAR | |||||||
Jour de la semaine | DAYOFWEEK | |||||||
Jour du mois | DAYOFMONTH | |||||||
Minute | MINUTE | MINUTE | MINUTE | |||||
Mois d'une date | MONTH | MONTH | MONTH | MONTH | ||||
MONTH_BETWEEN | ||||||||
Nom d'une partie de date | DATENAME | |||||||
Nom du jour | DAYNAME | DAYNAME | DAYNAME | |||||
Nom du mois | MONTHNAME | MONTHNAME | MONTHNAME | |||||
Numéro de la semaine | WEEK | WEEK | WEEK | WEEK | ||||
Partie de date | EXTRACT | EXTRACT | EXTRACT | EXTRACT DATE_PART | DATEPART | EXTRACT | ||
Prochain premier jour de la semaine | NEXT_DAY | |||||||
Recouvrement de période | OVERLAPS (prédicat) | OVERLAPS | ||||||
Retrait d'intervalle à une date | DATE_SUB SUBDATE | |||||||
Retrait de date | DATEDIFF |
Prédicat, opérateurs et structures diverses
Fonction | Description | Norme SQL | Paradox | Access | MySQL | PostGreSQL | SQL Server | Oracle | Interbase |
---|---|---|---|---|---|---|---|---|---|
CASE | Structure conditionnelle | O | N | N | O | O | O | X | O |
IS [NOT] TRUE | Vrai | O | N | N | N | N | N | N | N |
IS [NOT] FALSE | Faux | O | N | N | N | N | N | N | N |
IS [NOT] UNKNOWN | Inconnu | O | N | N | N | N | N | N | N |
IS [NOT] NULL | NULL | O | O | X | O | O | O | O | O |
INNER JOIN | Jointure interne | O | O | O | O | O | O | N | O |
LEFT, RIGHT, FULL OUTER JOIN | Jointure externe | O | O | O | O | O | O | N | O |
NATURAL JOIN | Jointure naturelle | O | N | N | O | O | N | N | N |
UNION JOIN | Jointure d'union | O | N | N | N | N | N | N | N |
LEFT, RIGHT, FULL OUTER NATURAL JOIN | Jointure naturelle externe | O | N | N | X | O | N | N | N |
INTERSECT | Intersection (ensemble) | O | ? | N | N | O | N | X | N |
UNION | Union (ensemble) | O | ? O | N | O | O | O | O | |
EXCEPT | Différence (ensemble) | O | ? | N | N | O | N | N | N |
[NOT] IN | Liste | O | O | O | X | O | O | O | O |
[NOT] BETWEEN | Fourchette | O | O | O | O | O | O | O | |
[NOT] EXISTS | Existence | O | ? | ? | N | O | O | O | O |
ALL | Comparaison à toutes les valeurs d'un ensemble | O | ? | O | N | O | O | O | O |
ANY / SOME | Comparaison à au moins une valeur de l'ensemble | O | ? | O | N | O | O | O | O |
UNIQUE | Existance sans doublons | O | N | N | N | N | N | N | N |
MATCH UNIQUE | Correspondance | O | N | N | N | N | N | N | N |
row value construteur | Construteur de ligne valuées | O | N | N | N | N | N | O | N |
MINUS | Différence (ensemble) | N | N | N | N | O | N | O | N |
LIMITE | nombre de ligne retournée | N | N | TOP | LIMIT | LIMIT | TOP | N | ROWS |
identifiant de ligne | N | N | N | _rowid | oid | N | rowid | ? |
Sous-requêtes
Description | Norme SQL | Paradox | Access | MySQL | PostGreSQL | SQL Server | Oracle | Interbase |
---|---|---|---|---|---|---|---|---|
Imbriquées | O | O | O | N | O | O | O | O |
Corrélées | O | O | O | N | O | O | O | O |
Dans la clause SELECT | O | O | N | O | O | O | O | |
Dans la clause FROM | O | N | N | N | O | O | O | N |
Dans la clause WHERE | O | O | O | N | O | O | O | O |
Dans la clause HAVING | O | O | N | N | O | O | O | O |