15
Les fonctions dans SQL par SQLPro (autres articles) Date de publication : 09/02/2009 Dernière mise à jour : Le présent tableau fait une synthèse des fonctions de la norme SQL (1992 à 2008), mais aussi des fonctions que l'on trouve dans les principaux dialectes des SGBDR que sont Paradox, Access, MySQL, PostGreSQL, SQL Server, Oracle et InterBase. Ce tableau ne prétend pas à l'exhaustivité mais permet la comparaison de l'implémentation des fonctions du SQL dans différents dialectes.

SQLPro - Les Fonctions Dans SQL (Developpez.com, 2009)

  • Upload
    samca59

  • View
    16

  • Download
    0

Embed Size (px)

Citation preview

  • Les fonctions dans SQL

    par SQLPro (autres articles)

    Date de publication : 09/02/2009

    Dernire mise jour :

    Le prsent tableau fait une synthse des fonctions de la norme SQL (1992 2008), maisaussi des fonctions que l'on trouve dans les principaux dialectes des SGBDR que sontParadox, Access, MySQL, PostGreSQL, SQL Server, Oracle et InterBase.Ce tableau ne prtend pas l'exhaustivit mais permet la comparaison de l'implmentationdes fonctions du SQL dans diffrents dialectes.

  • Les fonctions dans SQL par SQLPro (autres articles)

    - 2 -Copyright 2009 - Frdric Brouard. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes,documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 Ede dommages et intrts.

    http://sqlpro.developpez.com/cours/sqlaz/fonctions/

    1 - Les fonctions dans SQL........................................................................................................................................ 31.1 - Agrgation statistique.................................................................................................................................... 31.2 - Fonction "systme"........................................................................................................................................ 31.3 - Fonctions gnrales...................................................................................................................................... 41.4 - Fonctions de chanes de caractres............................................................................................................. 51.5 - Fonctions de chanes de bits........................................................................................................................ 71.6 - Fonctions numriques................................................................................................................................... 71.7 - Fonctions temporelles....................................................................................................................................91.8 - Fonctions OLAP (norme SQL:1999)........................................................................................................... 101.9 - Fonctions de fentrage et analytiques (normes 2003 et 2008)...................................................................111.10 - Prdicat, oprateurs et structures diverses...............................................................................................131.11 - Fonctions spciales....................................................................................................................................141.12 - Sous requtes............................................................................................................................................14

  • Les fonctions dans SQL par SQLPro (autres articles)

    - 3 -Copyright 2009 - Frdric Brouard. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes,documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 Ede dommages et intrts.

    http://sqlpro.developpez.com/cours/sqlaz/fonctions/

    1 - Les fonctions dans SQL

    Lgende :

    O : OuiN : NonX : Existe mais syntaxe hors norme! : Mme nom mais fonction diffrente- : implmentation partielle

    1.1 - Agrgation statistique

    FonctionDescriptionNormeSQL

    Paradox Access MySQLPostGreSQLSQLServer

    Oracle Interbase

    AVG Moyenne O O O O O O O OCOUNT Nombre O O X O O O O OMAX Maximum O O O O O O O OMIN Minimum O O O O O O O OSUM Total O O O O O O O OEVERY Tous

    (boolen)O N N N N N N N

    ANY /SOME

    Aumoinsun(boolen)

    O N N N N N N N

    1.2 - Fonction "systme"

    FonctionDescriptionNormeSQL

    Paradox Access MySQLPostGreSQLSQLServer

    Oracle Interbase

    CURRENT_DATEDatecourante

    O N N O O N N O

    CURRENT_TIMEHeurecourante

    O N N O O N N O

    CURRENT_TIMESTAMPDate etheurecourante

    O N N O O O N O

    CURRENT_USERUtilisateurcourant

    O N N N O O N N

    SESSION_USERUtilisateurautoris

    O N N X O O N N

    SYSTEM_USERUtilisateursystme

    O N N X O O N N

    CURDATEDate dujour

    N N N O N N N N

    CURTIMEHeurecourante

    N N N O N N N N

    DATABASENomde labasesde

    N N N O N O O N

  • Les fonctions dans SQL par SQLPro (autres articles)

    - 4 -Copyright 2009 - Frdric Brouard. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes,documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 Ede dommages et intrts.

    http://sqlpro.developpez.com/cours/sqlaz/fonctions/

    donnescourante

    GETDATEHeureet datecourante

    N N N N N O N N

    NOW Heureet datecourante

    N O O O O O O N

    SYSDATEDateet/ouheurecourante

    N N N O N N O N

    TODAY Date dujour

    N O N N N N N N

    USER Utilisateurcourant

    N N N O N O O O

    VERSIONVersionduSGBDR

    N N N O O N N N

    1.3 - Fonctions gnrales

    FonctionDescriptionNormeSQL

    Paradox Access MySQLPostGreSQLSQLServer

    Oracle Interbase

    CAST TranstypageO O N O O O O OCOALESCEValeur

    nonNULL

    O N N O O O N N

    NULLIF ValeurNULL

    O N N O O O N N

    OCTET_LENGTHLongueuren octet

    O N N O O N O N

    DATALENGTHLongueur N N N N N O N NDECODEFonction

    conditionnelleN N N N N N O N

    GREATESTPlusgrandevaleur

    N N N O N N O N

    IFNULL ValeurnonNULL

    N N N O O O N N

    LEAST Pluspetitevaleur

    N N N N O N O N

    LENGTHLongueur N N O O O O O NNVL Valeur

    nonNULL

    N N N N N N O N

    TO_CHARConversiondedonnes

    N N N N N N O N

  • Les fonctions dans SQL par SQLPro (autres articles)

    - 5 -Copyright 2009 - Frdric Brouard. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes,documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 Ede dommages et intrts.

    http://sqlpro.developpez.com/cours/sqlaz/fonctions/

    enchane

    TO_DATEConversionen date

    N N N N O N O N

    TO_NUMBERConversionennombre

    N N N N N N O N

    1.4 - Fonctions de chanes de caractres

    FonctionDescriptionNormeSQL

    Paradox Access MySQLPostGreSQLSQLServer

    Oracle Interbase

    || ConcatnationO O N X O N O OCHAR_LENGTHLongueur

    d'unechane

    O N N X O N N N

    CHARACTER_LENGTHLongueurd'unechane

    O N N O O O N N

    COLLATESubstitution unesquencedecaractres

    O N N N N N N O

    CONCATENATEConcatnationO N N N N O N NCONVERTConversion

    deformatdecaractres

    O N N N N ! O O

    LIKE(prdicat)

    Comparaisonpartielle

    O O X O O O O O

    LOWER Mise enminuscule

    O O N O O O O N

    POSITIONPositiond'unechanedansunesouschane

    O N N O O N N N

    SUBSTRINGExtractiond'unesouschane

    O O N O O N N N

    TRANSLATEConversiondejeu decaractres

    O N N N X N X N

    TO_CHARConversiondedonnesenchane

    N N N N N N O N

    TRIM Suppressiondes

    O O N O O N O N

  • Les fonctions dans SQL par SQLPro (autres articles)

    - 6 -Copyright 2009 - Frdric Brouard. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes,documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 Ede dommages et intrts.

    http://sqlpro.developpez.com/cours/sqlaz/fonctions/

    caractresinutiles

    UPPER Mise enmajuscule

    O O N O O O O O

    CHAR Conversionde codeencaractreASCII

    N N O O N O N N

    CHAR_OCTET_LENGTHLongueurd'unechaneenoctets

    N N N N N O N N

    CHARACTER_MAXIMUM_LENGTHLongueurmaximumd'unechane

    N N N N N O N N

    CHARACTER_OCTET_LENGTHLongueurd'unechaneenoctets

    N N N N N O N N

    CONCATConcatnationN N O O N O O NILIKE LIKE

    insensible lacasse

    N N N N O N N N

    INITCAP Initialesenmajuscule

    N N N N O N O N

    INSTR Positiond'unechanedansuneautre

    N N O O N N O N

    LCASE Mise enminuscule

    N N O O N O O N

    LOCATE Positiond'unechanedansuneautre

    N O O O N O O N

    LPAD Remplissagegauche

    N N N O O N O N

    LTRIM TRIM gauche

    N O O O O O O N

    NCHAR Conversionde codeencaractreUNICODE

    N N N N N O N N

    PATINDEXPositiond'un

    N N N N N O N N

  • Les fonctions dans SQL par SQLPro (autres articles)

    - 7 -Copyright 2009 - Frdric Brouard. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes,documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 Ede dommages et intrts.

    http://sqlpro.developpez.com/cours/sqlaz/fonctions/

    motifdansunechane

    REPLACERemplacementdecaractres

    N N N O N O O N

    REVERSERenversementN N N O N O O NRPAD Remplissage

    droiteN N N O O N O N

    RTRIM TRIM droite

    N N O O O O O N

    SPACE Gnrationd'espaces

    N N O O N O O N

    SUBSTRExtractiond'unesouschane

    N N N N N N O N

    UCASE Mise enmajuscule

    N N O O N O O N

    SIMILARRecherchesdemotifsavancs

    N N N N N N N N

    1.5 - Fonctions de chanes de bits

    FonctionDescriptionNormeSQL

    Paradox Access MySQLPostGreSQLSQLServer

    Oracle Interbase

    BIT_LENGTHLongueuren bit

    O N N N N N N N

    & "et"pour bitlogique

    N N ? ? ? O ? ?

    | "ou"pour bitlogique

    N N ? ? ? O ? ?

    ^ "ou"exclusifpour bitlogique

    N N ? ? ? O ? ?

    1.6 - Fonctions numriques

    FonctionDescriptionNormeSQL

    Paradox Access MySQLPostGreSQLSQLServer

    Oracle Interbase

    % Modulo N N N O O O N N+ - * / ( ) Oprateurs

    etparenthsage

    O O O O O O O O

    ABS Valeurabsolue

    N N O O O O O N

    ASCII Conversiondecaractre

    N N O O O O O N

  • Les fonctions dans SQL par SQLPro (autres articles)

    - 8 -Copyright 2009 - Frdric Brouard. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes,documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 Ede dommages et intrts.

    http://sqlpro.developpez.com/cours/sqlaz/fonctions/

    en codeASCII

    ASIN Angledesinus

    N N N O O O O N

    ATAN Angledetangente

    N N N O O O O N

    CEILINGValeurapprochehaute

    N N O O N O N N

    COS Cosinus N N O O O O O NCOT Cotangente N N O O O O N NEXP ExponentielleN N O O O O O NFLOOR Valeur

    approchebasse

    N N O O O O O N

    LN Logarithmenprien

    N N N N N N O N

    LOG Logarithmenprien

    N N O O N O O N

    LOG(n,m)Logarithmeen basen de m

    N N N N O N O N

    LOG10 Logarithmedcimal

    N N N O N O O N

    MOD Modulo N N O O O O O NPI Pi N N N O O O O NPOWER Elvation

    lapuissance

    N N O O N O O N

    RAND Valeuralatoire

    N N O O N O N N

    ROUND Arrondi N N O O O O N NSIGN Signe N N O O O O O NSIN Sinus N N O O O O O NSQRT Racine

    carreN N O O O O N N

    TAN Tangente N N O O O O O NTRUNC Troncature N N N N N N O NTRUNCATETroncature N N O O O O NUNICODEConversion

    decaractreen codeUNICODE

    N N N N N O ? N

  • Les fonctions dans SQL par SQLPro (autres articles)

    - 9 -Copyright 2009 - Frdric Brouard. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes,documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 Ede dommages et intrts.

    http://sqlpro.developpez.com/cours/sqlaz/fonctions/

    1.7 - Fonctions temporelles

    FonctionDescriptionNormeSQL

    Paradox Access MySQLPostGreSQLSQLServer

    Oracle Interbase

    EXTRACTPartiede date

    O O N O O N O N

    INTERVAL(oprationssur)

    Dure O N N N N N O N

    OVERLAPS(prdicat)

    Recouvrementdepriode

    O N N N O N N N

    ADDDATEAjoutd'intervalle unedate

    N N N O N N N N

    AGE Age N N N N O N N NDATE_ADDAjout

    d'intervalle unedate

    N N N O N N N N

    DATE_FORMATFormatagede date

    N N N O N N N N

    DATE_PARTPartiede date

    N N N N O N N N

    DATE_SUBRetraitd'intervalle unedate

    N N N O N N N N

    DATEADDAjout dedate

    N N N N N O N N

    DATEDIFFRetraitde date

    N N N N N O N N

    DATENAMENomd'une

    N N N N N O N N

  • Les fonctions dans SQL par SQLPro (autres articles)

    - 10 -Copyright 2009 - Frdric Brouard. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes,documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 Ede dommages et intrts.

    http://sqlpro.developpez.com/cours/sqlaz/fonctions/

    partiede date

    DATEPARTPartiede date

    N N N N N O N N

    DAY Jourd'unedate

    N N N N N O N N

    DAYNAMENom dujour

    N N O O N O N N

    DAYOFMONTHJour dumois

    N N N O N N N N

    DAYOFWEEKJourde lasemaine

    N N N O N N N N

    DAYOFYEARJourdansl'anne

    N N N O N N N N

    HOUR Extractiondel'heure

    N N O O N O N N

    LAST_DAYDernierjour dumois

    N N N N N N O N

    MINUTE N N O O N O N NMONTH Mois

    d'unedate

    N N O O N O O N

    MONTH_BETWEENMONTH_BETWEENN N NMONTHNAMENom du

    moisN N O O N O N N

    NEXT_DAYProchainpremierjourde lasemaine

    N N N N N N O N

    SECONDExtraitlessecondes

    N N O O N O N N

    SUBDATERetraitd'intervalle unedate

    N N N O N N N N

    WEEK Numrode lasemaine

    N N O O N O O N

    YEAR Anned'unedate

    N N O O N O O N

    1.8 - Fonctions OLAP (norme SQL:1999)

    FonctionDescriptionNormeSQL

    Paradox Access MySQLPostGreSQLSQLServer

    Oracle Interbase

    CUBE Soustotaux

    O N N N N O O N

  • Les fonctions dans SQL par SQLPro (autres articles)

    - 11 -Copyright 2009 - Frdric Brouard. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes,documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 Ede dommages et intrts.

    http://sqlpro.developpez.com/cours/sqlaz/fonctions/

    desagrgatspourtouteslescombinaisonspossibles

    ROLLUPSoustotauxdesagrgatspourtouteslescomibinaisonsvisibles

    O N N N N O O N

    GROUPINGSETS

    Soustotauxdesagrgatspourtouteslescomibnaisonsspcifies

    O N N N N O O N

    GROUPINGSIndicateurde soustotalisation

    O N N N N O O N

    NULLFIRTS /NULLLAST

    Spcificationdeclassementpour lesmarqueursNULL

    O N N N N N O N

    1.9 - Fonctions de fentrage et analytiques (normes 2003 et 2008)

    FonctionDescriptionNormeSQL

    Paradox Access MySQLPostGreSQLSQLServer

    Oracle Firebird

    ROW_NUMBERNumrotationdeslignes

    O N N N N O O N

    RANK Classementavectrou (exquo)

    O O N N N N O O

    DENSE_RANKClassementsans

    O N N N N O O N

  • Les fonctions dans SQL par SQLPro (autres articles)

    - 12 -Copyright 2009 - Frdric Brouard. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes,documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 Ede dommages et intrts.

    http://sqlpro.developpez.com/cours/sqlaz/fonctions/

    trou (exquo)

    CUME_DISTDistibutioncumulative

    O N N N N N ? N

    NTILE N-tile(dcile,centile, ....)

    O N N N N O O N

    Agrgats(MAX,MIN,COUNT,SUM...)

    Calculd'agrgatavecfentrage

    O N N N N O O N

    ROWS /RANGE

    Fentredecalculparligne ouvaleurs

    O N N N N N O N

    PRECEDING* /FOLLOWING* /BETWEEN

    Bornagede lafentredecalcul

    O N N N N N O N

    LAG /LEAD

    Borneprcdente,suivante

    O N N N N N O N

    FIRST_VALUE /LAST_VALUE /NTH_VALUE

    Bornepremire,dernire,Ne.valeur

    O N N N N N O N

    EXCLUDEE(CURRENTROW,GROUPTIES,NOOTHER)

    Exclusionde ligne

    O N N N N N N N

    ClauseWINDOW

    Dfinitiond'unefentredecalcul

    O N N N N N N N

  • Les fonctions dans SQL par SQLPro (autres articles)

    - 13 -Copyright 2009 - Frdric Brouard. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes,documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 Ede dommages et intrts.

    http://sqlpro.developpez.com/cours/sqlaz/fonctions/

    1.10 - Prdicat, oprateurs et structures diverses

    FonctionDescriptionNormeSQL

    Paradox Access MySQLPostGreSQLSQLServer

    Oracle Firebird

    CASE Structureconditionnelle

    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

    INNERJOIN

    Jointureinterne

    O O O O O O N O

    LEFT,RIGHT,FULLOUTERJOIN

    Jointureexterne

    O O O O O O N O

    NATURALJOIN

    Jointurenaturelle

    O N N O O N N N

    UNIONJOIN

    Jointured'union

    O N N N N N N N

    LEFT,RIGHT,FULLOUTERNATURALJOIN

    Jointurenaturelleexterne

    O N N X O N N N

    INTERSECTIntersection(ensemble)

    O ? N N O N X N

    UNION Union(ensemble)

    O ? O N O O O O

    EXCEPTDiffrence(ensemble)

    O ? N N O N X 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 touteslesvaleursd'unensemble

    O ? O N O O O O

    ANY /SOME

    Comparaison aumoins

    O ? O N O O O O

  • Les fonctions dans SQL par SQLPro (autres articles)

    - 14 -Copyright 2009 - Frdric Brouard. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes,documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 Ede dommages et intrts.

    http://sqlpro.developpez.com/cours/sqlaz/fonctions/

    unevaleurdel'ensemble

    UNIQUE Existancesansdoublons

    O N N N N N N N

    MATCHUNIQUE

    CorrespondanceO N N N N N N N

    rowvalueconstruteur

    Construteurde lignevalues

    O N N N N - - N

    1.11 - Fonctions spciales

    Fonction NormeSQL

    DescriptionParadox Access MySQLPostGreSQLSQLServer

    Oracle Firebird

    TABLESAMPLE

    chantillondedonnes

    O N N N N O O N

    TRUNCATEVidagede table

    O N N N N O O O

    OFFSET /FETCH

    Limitationdeslignesretournes

    O N N N N N N N

    LIMIT/TOP

    Nombrede ligneretourne

    N N N LIMIT LIMIT TOP N ROWS

    "RowId"

    Identifiantde ligne

    N N N _rowid oid N rowid ?

    1.12 - Sous requtes

    Fonction NormeSQL

    Paradox Access MySQLPostGreSQL SQLServer

    Oracle Firebird

    Imbriques O O O N O O O OCorrles O O O N O O O ODans laclauseSELECT

    O X O N O O O O

    Dans laclauseFROM

    O N N N O O O N

    Dans laclauseWHERE

    O O O N O O O O

    Dans laclauseHAVING

    O O N N O O O O

    CTE(CommonTableExpression :

    O N N N N O O O

  • Les fonctions dans SQL par SQLPro (autres articles)

    - 15 -Copyright 2009 - Frdric Brouard. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes,documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 Ede dommages et intrts.

    http://sqlpro.developpez.com/cours/sqlaz/fonctions/

    expressionde table)Requtesrcursivesvia CTE

    O N N N N O X O

    SynopsisSommaire1 - Les fonctions dans SQL1.1 - Agrgation statistique1.2 - Fonction "systme"1.3 - Fonctions gnrales1.4 - Fonctions de chanes de caractres1.5 - Fonctions de chanes de bits1.6 - Fonctions numriques1.7 - Fonctions temporelles1.8 - Fonctions OLAP (norme SQL:1999)1.9 - Fonctions de fentrage et analytiques (normes 2003 et 2008)1.10 - Prdicat, oprateurs et structures diverses1.11 - Fonctions spciales1.12 - Sous requtes