Estoy realizando una consulta SQL en Oracle y necesito obtener el año de una fecha y realizar un filtro con él, en concreto necesito sacar determinados registros cuyo año de la fecha de factura sea superior a 2007.
¿Cómo extraigo el año de una fecha en Oracle? he conseguido hacerlo con la función TO_CHAR de la siguiente forma:
Código:
select to_char(f.Fecha,'year') anoFactura
from facturas f
Y obtiene el año correctamente, pero si intento filtrar por el año de la siguiente forma:
Código:
select to_char(f.Fecha,'year') anoFactura
from facturas f
where to_char(f.Fecha,'year') >= 2007
Me da este error:
---------------------------
AjpdSoft Administración Bases de Datos
---------------------------
General SQL error.
Asunto: Re: Extraer año y realizar filtro en Oracle
Anuncios
varios escribió:
Estoy realizando una consulta SQL en Oracle y necesito obtener el año de una fecha y realizar un filtro con él, en concreto necesito sacar determinados registros cuyo año de la fecha de factura sea superior a 2007.
¿Cómo extraigo el año de una fecha en Oracle? he conseguido hacerlo con la función TO_CHAR de la siguiente forma:
Código:
select to_char(f.Fecha,'year') anoFactura
from facturas f
Y obtiene el año correctamente, pero si intento filtrar por el año de la siguiente forma:
Código:
select to_char(f.Fecha,'year') anoFactura
from facturas f
where to_char(f.Fecha,'year') >= 2007
Me da este error:
---------------------------
AjpdSoft Administración Bases de Datos
---------------------------
General SQL error.
La función: to_char(f.Fecha,'year') te obtendrá el año de la fecha indicada pero en texto, no en número. Por este motivo te da el error. Cambia tu SQL por la siguiente:
Código:
select to_char(f.Fecha,'YYYY') anoFactura
from facturas f
where to_char(f.Fecha,'YYY') >= 2007
y verás que te funciona, también puedes utilizar esta otra:
Código:
select to_char(f.Fecha,'YYYY') anoFactura
from facturas f
where EXTRACT(Year FROM f.Fecha >= 2007
Puede publicar nuevos temas en este foro No puede responder a temas en este foro No puede editar sus mensajes en este foro No puede borrar sus mensajes en este foro No puede votar en encuestas en este foro
Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A