Sei sulla pagina 1di 11

23/12/2014

Fechas:funcionesytiposenOracle|mundoDB

BusinessIntelligence

Administracin

SQLPL/SQL

Glosario

InicioSQLPL/SQLFechas:funcionesytiposenOracle

Fechas:funcionesytiposenOracle
PublicadoenporJessGarca

TIPOSDEDATOSDEFECHAS
DATE
Rangodesde01/01/4712AChasta31/12/9999DC.
Eltamaoesde7bytes.
ElformatolodeterminademaneraimplicitaelparmetroNLS_TERRITORYy
explicitamenteelparmetroNLS_DATE_FORMAT
Nocontemplalasfraccionesdesegundonilazonahoraria.
TIMESTAMP[(fracciones_de_segundos)]
Admitefraccionesde0a9dgitos,aunquepordefectoson6.
Dependiendodelaprecisineltamaovarade7a11bytes.
ElformatolodeterminademaneraimplicitaelparmetroNLS_TERRITORYy
explicitamenteelparmetroNLS_DATE_FORMAT
Contemplafraccionesdesegundo,peronozonahoraria.
TIMESTAMP[(fractional_seconds)]WITHTIMEZONE
Admitefraccionesde0a9dgitos,aunquepordefectoson6.
Eltamaoesfijode13bytes
Contemplafraccionesdesegundoyzonahoraria.
TIMESTAMP[(fractional_seconds)]WITHLOCALTIMEZONE
http://mundodb.es/fechasfuncionesytiposenoracle

1/11

23/12/2014

Fechas:funcionesytiposenOracle|mundoDB

Tieneunaseriedeconsideraciones:
Lainformacinesnormalizadaalazonahorariacuandoseguaraenlabasede
datos
Cuandolainformacinespedidaalabasededatosestransformadaalazona
horariadelasesin
Admitefraccionesde0a9dgitos,aunquepordefectoson6.
Dependiendodelaprecisineltamaovarade7a11bytes.
ElformatolodeterminademaneraimplicitaelparmetroNLS_TERRITORYy
explicitamenteelparmetroNLS_DATE_FORMAT
Contemplafraccionesdesegundoyzonahoraria.

MASCARASFORMATODEFECHA
Lasmascarasdetiemposeutilizanparaindicarcomoserealizanlas
transformacionesdecaracterafechauhoraelformato.
Lasmascaras,paraslastransformacioneslaspodisencontrarenelartculo:
MascarasdetiempoenOracle

FUNCIONESDECONVERSIN
Lasconversionesdetiposdedatospuedeser:
IMPLCITAS:RealizadaautomticamenteporOraclealasignarunvalordetipo
dateauntipoCHAR,VARCHAR2,NCHAR,orNVARCHAR2.Tambinalasignarle
unCHAR,VARCHAR2,NCHAR,orNVARCHAR2auntipoDATE.
EXPLCITAS:Elusuarioesquienlarealiza
CONVERSIONESEXPLICITAS:
TO_CHAR(nmero|fecha[,mascara])
ConvierteunnmeroofechaenunacadenadecaracteresVARCHAR2conel
modelodeformatodelamascara.
TO_DATE(char[,mascara])
Convierteunacadenadecaracteresrepresentandounafechaenunvalordefecha
http://mundodb.es/fechasfuncionesytiposenoracle

2/11

23/12/2014

Fechas:funcionesytiposenOracle|mundoDB

segnlamascaraespecificada..
TO_TIMESTAMP(CARACTER[,mascara'[,NLSPARAM]]),TO_TIMESTAMP_TZ
(CARACTER[,mascara'[,NLSPARAM]])
ConvierteunacadenadecaracteresdetiposCHAR,VARCHAR2,NCHARo
NVARCHAR2aunvalordetipoTIMESTAMP.EsTO_TIMESTAMP_TZiguala
TO_TIMESTAMP,aunqueaadiendoeldesplazamientodelazonahorariaen
relacinconGMToUTC
SQL>selectTO_TIMESTAMP('10Sep0214:10:10.123000',
'DDMonRRHH24:MI:SS.FF')
fromdual

TO_TIMESTAMP('10SEP0214:10:10.123000','DDMONRRHH24:MI:SS.FF')

10/09/0214:10:10,123000000

OPERADORESARITMTICOSDE
FECHAS
Sumarnmerosafechas:
SQL>selectto_date('01/01/2014','dd/mm/yyyy')+1fromdual;
TO_DATE(

02/01/14
Restarnmerosafechas:
SQL>selectto_date('01/01/2014','dd/mm/yyyy')1fromdual;
TO_DATE(

31/12/13
http://mundodb.es/fechasfuncionesytiposenoracle

3/11

23/12/2014

Fechas:funcionesytiposenOracle|mundoDB

Restardosfechas:
SQL>selectto_date('01/01/2015','dd/mm/yyyy')
to_date('01/01/2014','dd/mm/yyyy')
fromdual
TO_DATE('01/01/2015','DD/MM/YYYY')
TO_DATE('01/01/2014','DD/MM/YYYY')

365

FUNCIONESFECHAYHORAS
SYSDATE
Descripcin:
devuelvelafechayhoraactualsegnlazonahorariaconfiguradadelsistema
operativodelservidor.
Sintaxis:
SYSDATE
Ejemplos:
SELECTSYSDATEFROMDUAL;>06JUL13
CURRENT_DATE
Descripcin:
devuelvelafechayhoraactualsegnlazonahorariaconfiguradaenlasesin.
Sintaxis:
http://mundodb.es/fechasfuncionesytiposenoracle

4/11

23/12/2014

Fechas:funcionesytiposenOracle|mundoDB

CURRENT_DATE
Ejemplos:
SELECTCURRENT_DATEFROMDUAL;>06JUL13
SYSTIMESTAMP
Descripcin:
devuelveeltimestampsegnlazonahorariaconfiguradadelsistemaoperativodel
servidor.
Sintaxis:
SYSTIMESTAMP(TIMESTAMP_precision)
Ejemplos:
SELECTSYSTIMESTAMP(9)FROMDUAL;
>06JUL1302.05.08.079356000AM+02:00
CURRENT_TIMESTAMP
Descripcin:
devuelveeltimestampactualsegnlazonahorariaconfiguradaenlasesin.
Sintaxis:
CURRENT_TIMESTAMP(TIMESTAMP_precision)
Ejemplos:
SELECTCURRENT_TIMESTAMP(2)FROMDUAL;>06JUL1302.06.20.63AM
+02:00
LOCALTIMESTAMP:
http://mundodb.es/fechasfuncionesytiposenoracle

5/11

23/12/2014

Fechas:funcionesytiposenOracle|mundoDB

Descripcin:
Devuelvelafechaylahoraactualesenlazonahorariadelasesinconunvalordel
tipoTIMESTAMP.
Sintaxis:
LOCALTIMESTAMP(TIMESTAMP_precision)
Ejemplos:
SELECTLOCALTIMESTAMP(2)FROMDUAL;>06JUL1302.07.18.15AM
ADD_MONTHS
Descripcin:
Sumaorestaaunafecha,unnmerondemeses.
Sintaxis:
add_months(fecha,n)
Ejemplos:
selectadd_months(sysdate,5)fromdual;>06DEC13
selectadd_months(sysdate,5)fromdual;>06FEB13
selectadd_months(sysdate,1)fromdual;>06AUG13
LAST_DAY
Descripcin:
Devuelvelafechadelltimodadelmesquecontienefecha.
Sintaxis:
LAST_DAY(fecha)
Ejemplos:

http://mundodb.es/fechasfuncionesytiposenoracle

6/11

23/12/2014

Fechas:funcionesytiposenOracle|mundoDB

selectlast_day(to_date('10/02/2013','DD/MM/YYYY'))fromdual;>
28FEB13
selectlast_day(sysdate)fromdual;>31JUL13
MONTHS_BETWEEN
Descripcin:
retornaelnumerodemesesentrelasfechasenviadascomoargumento.Ejemplo:
Sintaxis:
months_between(fecha1,fecha2)
Ejemplos:
selectmonths_between(sysdate,to_date('10/02/2013','DD/MM/YYYY'))
fromdual;
>4.87236858
NEXT_DAY
Descripcin:
Devuelveunafechacorrespondientealprimerdaespecificadoendiadespusde
lafechaespecificada
Sintaxis:
next_day(fecha,dia)
Ejemplos:
Buscaelsiguientelunesapartirdehoy
selectnext_day(sysdate,'MONDAY')fromdual;>08JUL13
EXTRACT

http://mundodb.es/fechasfuncionesytiposenoracle

7/11

23/12/2014

Fechas:funcionesytiposenOracle|mundoDB

Descripcin:
Devuelvelaparteespecificadaporelprimerargumentodeunafecha,que
correspondealsegundoparmetro.Puedeextraerseelao(year),mes(month),da
(day),hora(hour),minuto(minute),segundo(second),etc.
Sintaxis:
extract(parte,fecha)
Ejemplos:
selectextract(monthfromsysdate)fromdual;>7
ROUND
Descripcin:
Cuandonoseespecificaningnformato,devuelvelafechadelprimerdadelmes
contenidoenfecha.Simscara=YEAR,encuentraelprimerdadelao.
Sintaxis:
ROUND(fecha[,mscara])
Ejemplos:
selectround(sysdate,'YEAR')fromdual;>01JAN14
TRUNC
Descripcin:
Devuelvelafechaconlaporcindeldatruncadoenlaunidadespecificadaporel
modelodeformatofmt.Siseomiteelformato,lafechasetruncaeneldams
prximo.
Sintaxis:
TRUNC(fecha[,mscara])
Ejemplos:
http://mundodb.es/fechasfuncionesytiposenoracle

8/11

23/12/2014

Fechas:funcionesytiposenOracle|mundoDB

SELECTsysdate,TRUNC(sysdate,'Month')1FROMdual;
>06JUL1330JUN13
SYS_EXTRACT_UTC
Descripcin:
DevuelvelafechaenUTC(zonahorariauniversal)
Sintaxis:
SYS_EXTRACT_UTC(datetime_with_timezone)
Ejemplos:
SELECTSYS_EXTRACT_UTC(TIMESTAMP'2013070511:30:00.0008:00')
FROMDUAL;
>05JUL1307.30.00.000000000PM
NUMTOYMINTERVAL
Descripcin:
ConviertenaunliteraldeltipoINTERVALYEARTOMONTH.
Unidaddeintervalodebeserunadelassiguientescadenas:DAY,HOUR,
MINUTE,SECOND
Sintaxis:
NUMTOYMINTERVAL(n,unidaddeintervalo)
Ejemplos:
SELECTto_char(sysdate+numtoyminterval(5,'MONTH'),
'MM/DD/YYYY')FROMdual;>12/06/2013
SELECTto_char(sysdate+numtoyminterval(2,'YEAR'),'MM/DD/YYYY')
FROMdual;>07/06/2015
http://mundodb.es/fechasfuncionesytiposenoracle

9/11

23/12/2014

Fechas:funcionesytiposenOracle|mundoDB

NUMTODSINTERVAL
Descripcin:
Sintaxis:
NUMTODSINTERVAL(n,unidaddeintervalo)
Ejemplos:
SELECTto_char(sysdate+numtodsinterval(2,'HOUR'),'HH:MIAM')
FROMdual;>03:34AM
SELECTto_char(sysdate+numtodsinterval(45,'MINUTE'),'HH:MI
AM')FROMdual;>02:20AM
TZ_OFFSET
Descripcin:
devuelveeloffsetdezonahorariacorrespondientealvalorintroducido.
Sintaxis:
TZ_OFFSET([time_zone_name][+|]hh:mm][SESSIONTIMEZONE]
[DBTIMEZONE])
Ejemplos:
SELECTTZ_OFFSET('Europe/Madrid')FROMDUAL;

BackupOracleenfrouoffline

InstalacinOracle12cenCENTOS

Publicadoen:SQLPL/SQLEtiquetadocon:funcionesOracle

Comparteelenlace,sitehagustado:
0

Twittear

http://mundodb.es/fechasfuncionesytiposenoracle

Megusta

10/11

23/12/2014

Fechas:funcionesytiposenOracle|mundoDB

Artculos
recientes
Oraclepivot/
Oracleunpivot
Oracle:Trucos
paraDBAII
Oracle:Trucos
paraDBAI
Evitarelerror
OracleORA
04091(tabla
mutante)

Categoras
Administracin
Artculos
destacados
Business
Intelligence
SQLPL/SQL

Artculos
destacados
Diseodata
warehouse:
hechosy
dimensiones
modeloestrella
VScopode
nieve
Nuevas
funcionalidades
Oracle
Database12c
Instalacin
Oracle12cen
CENTOS
BackupOracle
enfrouoffline

Avisolegal
Copyright2013

SIGUENOS

Contacto

http://mundodb.es/fechasfuncionesytiposenoracle

11/11

Potrebbero piacerti anche