Hirdetés
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- SSD kibeszélő
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Milyen notebookot vegyek?
- Azonnali alaplapos kérdések órája
- Melyik tápegységet vegyem?
- Nem indul és mi a baja a gépemnek topik
- NVIDIA® driverek topikja
- Stratégiai biztonsággal védekeznek a dráguló memóriák ellen a gyártók
-
PROHARDVER!

Új hozzászólás Aktív témák
-
vz12
tag
válasz
bandi0000
#14927
üzenetére
TEMP tábla ugye használható?
Az alábbi ötletem van, a szintaktikát a környezetedre kell majd konkretizálni.(1) CREATE TABLE temp AS(SELECT MIN(pld,rpld) pld, MAX(pld,rpld) rpld, qtt FROM input_table)(2) CREATE TABLE celtabla AS(SELECT pld, rpld, SUM(qtt) qtt FROM temp GROUP BY pld,rpld ORDER BY pld, rpld)(3) DROP TABLE temp -
Drizzt
nagyúr
válasz
bandi0000
#14927
üzenetére
Hát, ha befér az összes a memóriába, akkor:
1. Csinál egy mapet, amiben a kulcs egy id pár(pId, rPid), az érték meg maga a sor lesz.
2. Menj végig az összes DB soron. Nézd meg, hogy az adott sor (rPid,pId) párosával szerepel-e már elem az 1-es pont map-jében. Ha igen, akkor update-eld meg a hozzá tartozó sort, s valahogy jelöld meg, hogy a db-be is ki kell majd írni(pl. a kulcsát beteszed egy toUpdate Set<pId, rPid> halmazba). Az éppen olvasott sort meg rakd bele egy toDelete Set<pId, rPid>-be. Sőt, még egyszerűbb egy toUpdate Set<id> setet használni inkább.
3. Amikor végigértél az értékeken, akkor már csak annyi a dolgod, hogy a toUpdate elemeire tolsz egy batch update-et, a toDelete értékeivel jelzett sorra meg egy batch delete-et.Viszon ahogy elnézem a db sorodat... Nem kell a cId-t is belevenni a buliba, s hármasokat keresni inkább a párok helyett?
-
pelyib
tag
válasz
bandi0000
#14927
üzenetére
SQL (bar eleg koki vagyok benne):
left join onmagara (pid = rpid), sum a qtt-re (left join miatt itt figyelni kell, ha nincs masik sor, akkor default 0) group by cid
Ez csak akkor mukodik ha 2 sorod van (de mondom, koki vagyok hozza!)Vagy a sum_qtt-t subselect-tel is meg lehet oldalni. Ez tuti mukodik tobb sorral is.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- SSD kibeszélő
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Call of Duty: Black Ops 7
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- CADA, Polymobil, és más építőkockák
- Milyen notebookot vegyek?
- Spórolós topik
- One otthoni szolgáltatások (TV, internet, telefon)
- További aktív témák...
- HIBÁTLAN iPhone 15 Pro Max 256GB Black Titanium -1 ÉV GARANCIA - Kártyafüggetlen, MS3497, 100% Akksi
- ÁRGARANCIA! Épített KomPhone Ultra 9 285K 32/64GB RAM RTX 5070 Ti 16GB GAMER PC termékbeszámítással
- iPhone XS Max 256GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3997, 100% Akkumulátor
- Xiaomi Redmi Note 14 Pro+ / 8/256GB / Kártyafüggetlen
- ÖNERŐ NÉLKÜL, 12 RÉSZLETRE ELITRO PC BANKMENTES KAMATMENTES RÉSZLETFIZETÉS
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest



