Teamplace – SQL útiles

Listado de productos, con sus respectivos conceptos de valorización y tags para control

Select z.tagid, a.nombre as producto, b.nombre as ctacompras, d.nombre as conceptos from bsproducto as a
join FAFTablaTag as z on a.productoid = z.registroID
join bscuenta as b on
a.cuentaidcompra = b.cuentaid left 
join bsproductoconceptovalorizacion as c
on a.productoid = c.productoid join bsconceptovalorizacion as d 
on c.conceptovalorizacionid = d.conceptovalorizacionid order by producto

 

Encontrar próximo día de la semana (jueves en este ejemplo) a partir de una fecha en SQL

Crear una función en la DB

CREATE FUNCTION getNextFriday(@@Fecha DateTime)
RETURNS VARCHAR(10)
AS
BEGIN
  DECLARE @nextFriday DATETIME
  DECLARE @veryOldFriday DATETIME = '19000105'
  IF (DATEDIFF(DAY, @veryOldFriday,@@Fecha) %7) = 0
BEGIN
    SELECT @nextFriday = @@Fecha
  END
ELSE
BEGIN
    SELECT @nextFriday = DATEADD(DAY,- (DATEDIFF(DAY, @veryOldFriday,@@Fecha) %7 ) + 7, @@Fecha)
  END
  RETURN CONVERT(VARCHAR(10), @nextFriday, 112)
END

Llamar la función creada en el punto anterior.

SELECT dbo.getNextThursday('2018-06-07');