Hirdetés
Új hozzászólás Aktív témák
-
updog
őstag
Sziasztok,
Félig SQL, félig logikai dilemmám lenne: minden hétköznap(!) este érkezik hozzánk a megrendeléseket tartalmazó adatfile, amit rámergelünk az előző adatokra.
Betöltés után kell generálnunk egy kimeneti fájlt. A trükk az, hogy amíg a megrendelés státusza nem végleges (legyen mondjuk 0), addig minden nap újra meg újra ki kell tennünk a fájlba, akkor is ha aznap nem módosult, de ha aznap váltott 0-ra, akkor aznap kell még exportálni, de utána többször nem.
Egy view-ból generáljuk az adatokat, és ha csak mód van rá, szeretném úgy megoldani, hogy a táblába ne kelljen hozzáadni az "elküldve" vagy hasonló oszlopot, csak a view módosításával viszont nem látom, hogy ezt a "utoljára még elküldöm de többször nem" feltételt hogy írjam meg, ha az utolsó státuszváltás után nem változik a rekord (tehát a feltételnek igaznak kell lennie aznap amikor érkezett, de utána már nem).
Példa:
MEGR MEGR_DATUM MOD_DATUM STATUSZ ADAT_ERKEZETT
---- ---------- --------- ------- -------------
1234 20170502 null 1 20170502Új megrendelés 2017.05.02-n, betöltés után kimentjük fájlba.
03-án nem módosul a rekord, de exportáljuk.
MEGR MEGR_DATUM MOD_DATUM STATUSZ ADAT_ERKEZETT
---- ---------- --------- ------- -------------
1234 20170502 170504 2 20170504Státusz módosult, nem végleges státusz, exportáljuk.
05-én nem módosul, de exportáljuk
MEGR MEGR_DATUM MOD_DATUM STATUSZ ADAT_ERKEZETT
---- ---------- --------- ------- -------------
1234 20170502 170506 0 20170508Státusz módosult (6-án!), amikor megérkezett a módosítás (május 8!) még kigeneráljuk, de 9-én és utána már nem.
(M)Nyilván eddig megvan:
SELECT * FROM MEGRENDEL WHERE STATUSZ <> 0
AND ... --itt még van 1-2 business feltétel
;Ami a triviális megoldás hogy felveszek egy ELKULDVE oszlopot, és küldés után updatelem 1-re, és hozzáadom a feltételt:
AND NVL(ELKULDVE,0)=0De mivel a tábla tisztán business adatokat tartalmaz, nem nagyon tetszene senkinek, ha én ilyen technikai jellegű oszlopot felvennék. Sajnos sysdate-re alapuló feltétel se játszik mert a beérkező fájl jöhet éjfél előtt, után, vagy akár aznap ki is maradhat, akkor másnap kétnapi adat megy be.
Új hozzászólás Aktív témák
- iPad Pro 12.9" M1 256GB 2021 - touchpad keyboard, pencil 2 - full, garancia (116)
- Macbook Pro 14" M1 Pro - 2022 gyártás, 10 GPU, 14 CPU, 32 GB / 1 TERA - garancia (102)
- PS5 Slim 1 TB - Garanciás 2027.04.15
- Google Pixel 9 Pro XL 16/256gb
- Asus 15.6,core i3 5005(4x2,0Ghz)IntelHD VGA,8-16GB RAM,SSD,,Win.11,Jó akku
- ÚJ AKCIÓS HP EliteBook 6 G1a Ryzen 5 PRO 230 16GB DDR5 512GB FHD+ 16:10 már jobbik kijelző, gar 2028
- Apple iPhone 14 Plus 128GB, Kártyafüggetlen, 1 Év Garanciával
- Keresünk iPhone 13/13 Mini/13 Pro/13 Pro Max
- MSI GF65 Thin - 15,6"FHD 120Hz IPS - i5-9300H - 16GB - 1,25TB SSD - Win11 - GTX 1660 Ti - MAGYAR
- Samsung Galaxy S26 Ultra 512 GB Égkék Karcmentes állapot 12 GB RAM SN: R5GL22FEBCW 6 hónap g
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

