- Apple Watch
- OnePlus 15 - van plusz energia
- Xiaomi 15T Pro - a téma nincs lezárva
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Google Pixel topik
- Milyen okostelefont vegyek?
- Samsung Galaxy S23 Ultra - non plus ultra
- Qualcomm lapkával és nagyobb teleppel várható a CMF Phone 3 Pro
- Honor Magic8 Pro - bevált recept kölcsönvett hozzávalókkal
- Samsung Galaxy A55 - új év, régi stratégia
Új hozzászólás Aktív témák
-
Zalanius
tag
válasz
mr.nagy
#3935
üzenetére
Az ilyen "rákövetkező hét x. nap" stb. elég mókolós tud lenni, ezért ha nem megy egyből kisujjból, célszerű felírni néhány segédváltozót, azzal elbabrálni, tesztelgetni. Két példa lent:
-- 1. Olvasmányosan
DECLARE @bazisnap date = SYSDATETIME();
DECLARE @napdelta int = 8; -- adjunk hozzá x napot
DECLARE @celnap int = 6; -- a következő pénteket keressük, a péntek sorszáma 6, ez a skála 1-7 közötti
DECLARE @eredmeny date;
-- 8 nap múlva milyen nap lesz?
DECLARE @x1 int = (SELECT DATEPART(dw, DATEADD(day, @napdelta, @bazisnap)));
-- Adjuk az deltához a még hiányzó napokat, két eset lehetséges
IF @x1 > @celnap SET @napdelta = @napdelta + 7 - (@x1 - @celnap); ELSE SET @napdelta = @napdelta + @celnap - @x1;
SET @eredmeny = DATEADD(day, @napdelta, @bazisnap);
-- Ellenőrizhető az összes részszámítás is, ha kell
SELECT @eredmeny, @napdelta, @x1;
-- 2. Kevésbé olvasmányosan
SELECT CASE WHEN DATEPART(dw, DATEADD(day, 8, SYSDATETIME())) <= 6 THEN CONVERT(date, DATEADD(day, 8 + 6 - DATEPART(dw, DATEADD(day, 8, SYSDATETIME())), SYSDATETIME()))
ELSE CONVERT(date, DATEADD(day, 8 + 7 - (DATEPART(dw, DATEADD(day, 8, SYSDATETIME())) - 6), SYSDATETIME()))
END;
Új hozzászólás Aktív témák
- -68%OFF HP Spectre x360 14 (14-ef2276ng) i7-1355U/16GB/1TBSSD/3K 3000X2000 Amoled
- GIGA AKCIÓ!!! MacBook Air M4 24GB 512GB Garancia! SILVER
- Corsair VENGEANCE LPX 32GB (2x8GB) DDR4 3000MHz
- Corsair VENGEANCE LPX 32GB (2x8GB) DDR4 3000MHz
- Lenovo LOQ 15ARP9 / RTX 4060 115W / Ryzen 7 7435HS / 16GB DDR5 /Full HD 144Hz /Garancia 2027 év vége
- Eladó Samsung Galaxy A51 4/128GB / 12 hónap jótállás
- GYÖNYÖRŰ iPhone 14 Plus 128GB Blue-1 ÉV GARANCIA - Kártyafüggetlen, MS4642
- LG OLED65G49LS CSÚCS Ultra HD 4K 65" OLED TV!
- 27% - GIGABYTE GS27QCA VA Gaming Monitor! 2560x1440 / 180Hz / 1ms / FreeSync
- Ritkaság! Csere-Beszámítás! EVGA FTW3 Ultra RTX 3080 10GB GDDR6X Videokártya!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

