La Web del Programador: Comunidad de Programadores
https://www.lawebdelprogramador.com/foros/Oracle/138486-dia-de-la-semana-de-una-fecha-dada.html

dia de la semana de una fecha dada

dia de la semana de una fecha dada

Publicado por Mauricio (1 intervención) el 26/04/2002 00:06:33
Como puedo saber el dia de la semana de una fecha dada
po ejemplo para lunes 0, martes 1 ... domingo 6

Tambien saber la semana del año actual para la misma fecha

RE:dia de la semana de una fecha dada

Publicado por Alejandro César (189 intervenciones) el 26/04/2002 01:12:33
Prueba esto:

select to_char(sysdate, 'DAY', 'NLS_DATE_LANGUAGE=SPANISH')
from dual

Salu2.

RE:dia de la semana de una fecha dada

Publicado por Alejandro César (189 intervenciones) el 26/04/2002 01:13:14
Prueba esto:

select to_char(sysdate, 'DAY', 'NLS_DATE_LANGUAGE=SPANISH')
from dual

Salu2.

RE:dia de la semana de una fecha dada

Publicado por Alejandro César (189 intervenciones) el 26/04/2002 01:18:29
Este esta mejor:

select DECODE(RTRIM(LTRIM(to_char(sysdate, 'DAY', 'NLS_DATE_LANGUAGE=SPANISH'))),
'LUNES', 0, 'MARTES', 1, 'MIERCOLES', 2, 'JUEVES', 3,
'VIERNES', 4, 'SABADO', 5, 6)
from dual

RE:dia de la semana de una fecha dada

Publicado por ADFGS (1 intervención) el 19/02/2015 20:28:29
SELECT (TO_CHAR(:V_FECHA,'D')) FROM DUAL;

RE:dia de la semana de una fecha dada

Publicado por Romeo Santos (2 intervenciones) el 05/08/2015 22:45:10
Excelente!

RE:dia de la semana de una fecha dada

Publicado por Jorge (1 intervención) el 19/04/2017 16:05:21
pero si miércoles lo trae con tilde y no lo quiero manejar con tilde?

RE:dia de la semana de una fecha dada

Publicado por Romeo Santos (2 intervenciones) el 05/08/2015 22:45:44
Excelente!

RE:dia de la semana de una fecha dada

Publicado por Fabian (1 intervención) el 23/06/2023 01:50:46
Oye qué hermoso!! muchas gracias por ese código, Excelente!!

dia de la semana de una fecha dada

Publicado por Soraya (1 intervención) el 10/10/2022 11:30:44
Lo primero es hacer un alter session para poner el territorio por defecto, porque depende de donde se haga la consulta te puede dar datos diferentes, por ejemplo el domingo puede ser el día 1 o el día 7 dependiendo de este parámetro.

alter session set nls_territory='SPAIN';

Al marcarlo como SPAIN, la semana comenzará en lunes y por tanto el lunes será el día 1, martes 2, ..., domingo 7.

select TO_CHAR(TO_DATE('20221010', 'YYYYMMDD'), 'D') from dual;

Devolverá 1 porque el 10/10/2022 es lunes.

Para saber qué número de día es el día actual haremos:

select TO_CHAR(SYSDATE, 'D') FROM DUAL