Publicado el Martes, 14 de Febrero de 2012 | SQLServer Function - Cantidad de mismos d�as de la Semana, en un per�odo de tiempo. | | �Funci�n SQLServer, �til para devolvernos la cantidad de d�as en un determinado per�odo de tiempo. Cuando necesitamos saber cuantos d�as de hay en un tiempo determinado que correspondan al mismo d�a de la semana, esta es la soluci�n. En el ejemplo se obtienen todos los dominio del mes de febrero... Espero les sirva y me escriban sus comentarios! MartinSC.
Importante: Esta funci�n es de autoria de JMSoluciones Inform�ticas.
CREATE FUNCTION [usGeneral].[DiasCantidad_PorDiaSemana] (@FechaInicio Date, @FechaFin Date, @DiaSemana INT)
Returns INT
AS
Begin
/* JMSOL.com.ar Autor: Martin San Cristobal Email: [email protected] Comentario: #
select usGeneral.DiasCantidad_PorDiaSemana('20120201', '20120228', 1) */
DECLARE @AUX INT DECLARE @Dias INT DECLARE @DiasMes INT DECLARE @Fecha DateTime SET @Dias = 0 SET @AUX = 0 SET @Dias = Datediff(d, @FechaInicio, @FechaFin) SET @DiasMes = 0
WHILE @AUX < @Dias begin SET @Fecha = DateAdd(d, @AUX, @FechaInicio)
if (DatePart(w, @Fecha) = @DiaSemana) SET @DiasMes = @DiasMes + 1 SET @AUX = @AUX + 1 end return (@DiasMes)
End
| Ingresar Comentar | |
Publicado el Miércoles, 08 de Febrero de 2012 | SPLIP : Funci�n SQLServer | | SPLIP : Funci�n SQLServer, �til para devolvernos una tabla con valores separados por comas a partir de un string.
Se puede utilizar para evitar muchos accesos a la base de datos desde nuestro sistema. Podemos pasar en un mismo acceso todos los valores, ya sea provenientes de una lista de checks o cualquier otro tipo de selector m�ltiple. Cuando necesitamos hacer una selecci�n con varios valores como filtro, utilizamos esta funci�n que nos permitir� hacer un JOIN con nuestra tabla y devolver los resultados deseados.
Espero les sirva y me escriban sus comentarios! MartinSC.
Importante: Las funciones o porciones de c�digo publicadas en nuestro sitio son realizadas por desarrolladores de JMSoluciones Inform�ticas, es posible encontrar la base en otras fuentes, por siempre tendr�n revisi�n y/o re codificaci�n adaptada a nuestros m�todos.
CREATE FUNCTION [dbo].[fnSplit](@String varchar(8000), @Delimiter char(1))
returns @temptable TABLE (items varchar(8000))
as
begin
declare @idx int declare @slice varchar(8000) select @idx = 1 if len(@String)<1 or @String is null return while @idx!= 0 begin set @idx = charindex(@Delimiter,@String) if @idx!=0 set @slice = left(@String,@idx - 1) else set @slice = @String if(len(@slice)>0) insert into @temptable(Items) values(ltrim(rtrim(@slice)))
set @String = right(@String,len(@String) - @idx) if len(@String) = 0 break end
return
end
| Ingresar Comentar | |
SQLServer Function - D�a de la Semana | | Funci�n simple de SQLServer que utilizamos para saber el nombre del d�a de la semana. Hay muchas variantes, pero esta es personal y para los que programamos en espa�ol.
Importante: Las funciones o porciones de c�digo publicadas en nuestro sitio son y ser�n siempre de autoria de desarrolladores de JMSoluciones Inform�ticas, caso contrario,la fuente siempre ser� mencionada.
create function [dbo].[fnDiaSemana] (@Fecha datetime)
Returns varchar(20)
as
begin
/* JMSOL.com.ar Autor: Martin San Cristobal Email: [email protected] Comentario: #
select dbo.fnDiaSemana(GetDate()) */
Declare @DiaSemana varchar(20) Declare @Dia tinyint Set @Dia = datepart(dw, @Fecha)
if (@Dia = 1) set @DiaSemana = 'Domingo' if (@Dia = 2) set @DiaSemana = 'Lunes' if (@Dia = 3) set @DiaSemana = 'Martes' if (@Dia = 4) set @DiaSemana = 'Mi�rcoles' if (@Dia = 5) set @DiaSemana = 'Jueves' if (@Dia = 6) set @DiaSemana = 'Viernes' if (@Dia = 7) set @DiaSemana = 'S�bado'
Return @DiaSemana end
| Ingresar Comentar | |
|
|