Új hozzászólás Aktív témák

  • Jim74

    nagyúr

    válasz mr.nagy #3935 üzenetére

    Remélem jó lesz, amit összeraktam ;).
    A lényeg, ha a +8 nap dátum péntekre vagy előbbre esik, akkor 5-től annyival kevesebb napot kell hozzáadni a + 8 napos dátumhoz, ahányadik nap a héten a + 8 napos dátum.
    Ha péntek után esik a +8 nap, akkor 12-től (5 + 7, azaz péntek + 1 hét) annyival kevesebb napot kell hozzáadni a + 8 napos dátumhoz ahányadik nap a héten a + 8 napos dátum.

    Remélem sikerült érthetően fogalmaznom, így jó pár pohár bor után :DDD. Mindenféleképpen próbáld ki pár napon, hogy jól számol-e ;)

    Igazából az első set date-s sor és az utolsó iif-esre van szükséged, a többi csak az átláthatóság kedvéért hagytam benne.

    set DATEFIRST 1 -- ezzel beállítod, hogy a hétfő legyen a hét első napja, mert alap esetben, ha jól tudom, akkor a vasárnap az 1. Én jobban szeretem, ha a hétfő az 1.
    select cast(getdate()as date) as "Mai nap dátum"
    ,datepart(weekday,getdate()) as "Mai nap sorszáma a héten"
    ,cast(getdate()+8 as date) as "Mai nap + 8 nap dátum"
    ,datepart(weekday,getdate()+8) as "Mai nap + 8 nap sorszám a héten"
    ,iif(datepart(weekday,getdate()+8)<=5,cast(getdate()+8+(5-datepart(weekday,getdate()+8)) as date),cast(getdate()+8+(12-datepart(weekday,getdate()+8))as date))

    [ Szerkesztve ]

Új hozzászólás Aktív témák