- OnePlus 15 - van plusz energia
- Bemutatkozott a Poco X7 és X7 Pro
- Felújított okostelefonokat kínál a Rejoy
- Xiaomi Mi 9T Pro - tizenegyes!
- Motorola Moto G06 Power – nagyfater új zakót vett
- Honor Magic V5 - méret a kamera mögött
- Honor 200 - kétszázért pont jó lenne
- Honor Magic7 Pro - kifinomult, költséges képalkotás
- Redmi Note 13 Pro 5G - nem százas, kétszázas!
- Samsung Galaxy S22 és S22+ - a kis vagány meg a bátyja
Ú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
- Így ismerd fel AI nélkül az AI képeket!
- Az Intel szerint mindenkit érint, illetve érinteni fog a CPU-hiány
- PROHARDVER! feedback: bugok, problémák, ötletek
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- exHWSW - Értünk mindenhez IS
- Milyen videókártyát?
- Revolut
- Call of Duty 4
- Gyúrósok ide!
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- További aktív témák...
- Sony PlayStation 5 Pulse Explore Vezeték Nélküli Fülhallgató
- ELADÓ FOXWELL NT630 Plus OBD2 autódiagnosztikai eszköz
- Ryzen 7 3700X / RTX 2060 SUPER / 32GB RAM / 512GB NVMe Gamer PC
- Beszámítás! Motorola Sound Flow XT2549-1 hangszóró hibátlan működéssel
- Beszámítás! Lenovo Thinkpad P15 Gen 1 FHD notebook - i7 10850H 32GB DDR4 1TB SSD T2000 4GB W11
- Használt 1TB NVME SSD-k.
- Lenovo Thinkpad X1 Yoga 6th Gen. i7 11th, 32GB RAM 27% ÁFÁS (0326)
- Azonnali kézbesítés az év bármely pillanatában
- Steam, EA, Ubisoft és GoG játékkulcsok, illetve Game Pass kedvező áron, egyenesen a kiadóktól!
- Asus BTF White Gaming PC! 7800X3D / RTX 5070 Ti / B850 / 32GB 6000MHz / 2TB NVMe / 850w Gold!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

