Machetes Varios

apuntes varios erp cwa logic ( ahora SoftLand Logic ) – sql y veremos que otra cosa

Función que determina el día de la semana


Es Independiente del seteo del @@DATEFIRST.

Ej.:( Retorna “MAR”)

SELECT dbo.Usr_Fn_DiaSemString(‘20080122’)

Ref: artículos  94819 y 95382 Sql Magazine
Por Ilzik Ben-Gan

— =============================================
— Author: Carlos L. Pedranti
— Create date: 22/01/2008
— Retorna un String que Representa el día de la Semana
— La Función es independiente del seteo de @@DATEFIRST
— Basada en los artículo 94819 y 95382 Sql Magazine
— Por Ilzik Ben-Gan
— SELECT dbo.Usr_Fn_DiaSemString(‘20080122’)
— =============================================
CREATE FUNCTION Usr_Fn_DiaSemString
(
— Add the parameters for the function here
@fecha DATETIME
)
RETURNS VARCHAR(3)
AS
BEGIN

DECLARE @DIASEM VARCHAR(3),
@DIANUMERO INTEGER

— 0 representa 01/01/1900 que fue Lunes

SELECT @DIANUMERO = DATEDIFF(day,0,@fecha)%7 + 1

— Otra alternativa es
–SELECT @DIANUMERO = DATEPART(weekday,@fecha + @@DATEFIRST – 1 )

SELECT @DIASEM = CASE(@DIANUMERO)
WHEN 1 THEN ‘LUN’
WHEN 2 THEN ‘MAR’
WHEN 3 THEN ‘MIE’
WHEN 4 THEN ‘JUE’
WHEN 5 THEN ‘VIE’
WHEN 6 THEN ‘SAB’
WHEN 7 THEN ‘DOM’
ELSE ‘XXX’
END

RETURN @DIASEM

END

enero 22, 2008 - Posted by | sql magazine, SQL Server, Transact SQL

4 comentarios »

  1. Y con SELECT DATENAME(dw, getdate()) no me alcanzaría?

    Comentario por sebagiar | febrero 2, 2010 | Responder

  2. SELECT DATENAME(dw, 2)

    “2” es el numero del día. (martes)

    Comentario por Anónimo | abril 24, 2012 | Responder

  3. depende del seteo del @@DATEFIRST

    Comentario por mismachetes | abril 24, 2012 | Responder


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: