- Meghozta a régóta várt asztali Ryzen APU-kat az AMD
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Nem indul és mi a baja a gépemnek topik
- Meghozta az első, memórapánikból eredő áremelését az NVIDIA
- Azonnali alaplapos kérdések órája
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Milyen billentyűzetet vegyek?
- Apple MacBook
- TCL LCD és LED TV-k
Új hozzászólás Aktív témák
-
nyunyu
félisten
válasz
Apollo17hu
#5214
üzenetére
Az a baj, hogy az előző lépésben számolt értékre van szükséged a következő kiszámolásához, és nem szimplán szummázod a korábbi értékeket.
Így vagy rekurzívan számolod ki, vagy ciklust írsz rá.
Ezekre nem nagyon van szabvány szintaxis, kb. minden DBnek más megoldása van rá.
Oracle alatt valahogy így nézne ki a ciklusos megoldás:
DECLARE
v_id varchar2(10);
v_ertek number;
v_korr_ertek number := 0;
CURSOR c is
SELECT id, ertek
FROM proba
ORDER BY id;
BEGIN
OPEN c;
LOOP
FETCH c INTO v_id, v_ertek;
EXIT WHEN c%notfound;
v_korr_ertek := CASE WHEN v_korr_ertek + v_ertek > 0
THEN 0
ELSE v_korr_ertek + v_ertek
END;
dbms_output.put_line(v_id || ',' || v_ertek || ',' || v_korr_ertek);
/*
UPDATE proba
SET korr_ertek = v_korr_ertek
WHERE id = v_id;
*/
END LOOP;
CLOSE c;
END;Deklarálsz egy kurzort, amiben azonosító szerint növekvő sorrendben jönnek a rekordok, aztán azon egyesével végig mész, kiszámolva az aktuális korrigált értéket.
Új hozzászólás Aktív témák
- Meghozta a régóta várt asztali Ryzen APU-kat az AMD
- Apple iPhone 17 Pro Max – fennsík
- Futás, futópályák
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Hardcore café
- Debrecen és környéke adok-veszek-beszélgetek
- Motoros topic
- Nem indul és mi a baja a gépemnek topik
- Kodi és kiegészítői magyar nyelvű online tartalmakhoz (Linux, Windows)
- MWC 2026: Megérkezett a NXTPaper AMOLED
- További aktív témák...
- TUF A15 FA507NV 15.6" FHD IPS Ryzen 5 7535HS RTX 4060 16GB 512GB NVMe gar
- GIGABYTE Z790 EAGLE +2x16GB 6400MHz CL32 PATRIOT VIPER VENOM DDR5 kit egyben eladó! GAR/SZÁMLA!
- Seagate Exos X20 20TB SATA3 (ST20000NM007D) HDD
- Aspire Go 15 (AG15-32P) 15.6" FHD Core 3 N350 8GB 256GB NVMe magyar bill új akku gar
- Western Digital 3.5" 4TB Nasware HDD
- HP EliteBook 840 G10 13. gen i5, 16GB DDR5, prémium üzleti laptop! 1 év garancia
- Akció!!! Microsoft Surface Laptop 4 13.5" i7-1185G7 16GB 512GB 1 év garancia
- Apple iPhone 12 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- Akció!!! Sosemhasznált! HP OmniBook 5 Ultra 7 255U 5.2GHz 16GB 512GB 16" FHD+ Gar.: 1 év
- darkFlash CF8 Pro
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

