sql >> Database >  >> RDS >> Sqlserver

SSIS-expressie om vorige vrijdag te vinden

Zal dit werken (je kunt GETDATE() vervangen voor @date , ik heb dat net gebruikt om gemakkelijk verschillende datums uit te testen)

DECLARE @date DATETIME
SET @date = '2013-01-14'

SELECT
    PrevFriday = CASE WHEN DATEPART(weekday, @date) <> 2 THEN @date
                      ELSE DATEADD(DAY, -3, @date)
                 END

UPDATE:Hier is hetzelfde, maar gedaan in SSIS Variable Expression:

DATEPART("dw", GETDATE()) != 2?
GETDATE():
DATEADD("dw", -3, GETDATE())

UPDATE #2:Hier leest u hoe u de vorige vrijdag kunt retourneren voor ELKE datum, niet alleen voor maandag

SELECT DATEADD(DAY, -1 - (DATEPART(weekday, @date) % 7), @date)



  1. Getallen opmaken met komma's in MariaDB

  2. PostgreSQL-fout bij het maken van een extensie

  3. Mysqldump uitvoeren vanuit een PHP-script werkt niet, maar werkt op SSH

  4. SQL Tel het aantal exemplaren in een kolom en bereken het totaal van een andere