Hirdetés
- Brogyi: CTEK akkumulátor töltő és másolatai
- gban: Ingyen kellene, de tegnapra
- Viber: ingyen telefonálás a mobilodon
- sziku69: Fűzzük össze a szavakat :)
- aquark: Zsebszámológépek
- Luck Dragon: Asszociációs játék. :)
- MasterDeeJay: RAM gondolatok: Mennyi a minimum? DDR3 is jó?
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- gerner1
- Geri Bátyó: Ezt pedig azért, mert...
Új hozzászólás Aktív témák
-
nyunyu
félisten
válasz
kw3v865
#4459
üzenetére
Mi volt a baj az eredeti elképzeléseddel?
FOR nem a mögé írt query által visszaadott sorrendben megy végig a sorokon, mint ahogyan a kurzorok tennék? De.
Indexelős ötleted nagyon elborult, egyrészt nehéz megvalósítani, pl. mi van akkor, ha jön egy új elem a táblába, akkor minden sort megupdatelsz az aktuális sorrend alapján?
Iszonyúan nagy overheadet produkálnának az ehhez szükséges triggerek.Ha csak annyi lenne a kérdés, hogyan tudod megmondani egy sorról, hogy ő valamilyen rendezés szerint hanyadik a táblában, akkor a row_number() over (order by x,y) függvényt tudod használni.
Egyébként meg a relációs adatbázisok mindig halmazokkal dolgoznak, nem egy-egy elemmel, így a más programnyelvek procedurális gondolkozásmódja (ciklusok, kurzorok...) SQLben sosem ad jó teljesítményt.
Próbálj inkább úgy gondolkozni, hogyan lehet egy queryvel az összes adatot egyszerre frissíteni/beszúrni.Előző projekten amúgy belefutottam hasonlóba, mint amit most szeretnél.
Örököltem egy kódot, ami egy táblából csinált egy rendezett kurzort, majd azon ment végig egyesével, és dinamikus SQLben kért új értéket egy szekvenciából, majd updatelte rá a tábla soraira, kvázi új indexet vezetett be.
Persze, hogy 15000 sor esetén húsz percig szöszmötölt rajta az Oracle.
Megoldás az lett, hogy egy segédtáblába leválogattam a fő tábla azonosítóit, meg a row_number() over (order by x,y) rn-t, aztán következett egy jól irányzott merge a fő táblára.
Egyből lefut 10 másodperc alatt...
Új hozzászólás Aktív témák
- Fotók Google Camera Mod-dal (GCAM)
- MWC 2026: Bajnoki címre pályázik a Xiaomi Watch 5
- Formula-1
- PlayStation 5
- Projektor topic
- Mesterséges intelligencia topik
- Renault, Dacia topik
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Energiaital topic
- Brogyi: CTEK akkumulátor töltő és másolatai
- További aktív témák...
- HP 255 G8 - 15.6" FullHD IPS - Ryzen 5-5500U - 8GB - 512GB SSD - Win11 - MAGYAR - ÚJ AKKU
- Erős GAMER PC + 120 Hz monitor GTX 1080 Ryzen 3300X Azonnal használható Kipróbálható
- Xiaomi Redmi Note 15 Pro 8/256GB Szinte új,Kártyafüggetlen,Dobozos,Tartozékaival. 1 Év Garanciával!
- ASUS CERBERUS GTX 1050 Ti OC 4GB
- 269 - Lenovo Yoga Pro 9 (16IAH10) - Intel Core U9 285H, RTX 5060
- Xbox Game Pass Ultimate előfizetések kedvező áron
- Bontott 0perces MIDNIGHT MacBook Air 15" M4 10C/1G 16GB 256GB Gar.: 3 év telekom + közel 1 APPLE gar
- Honor Magic6 Pro / 12/512GB / Kártyafüggetlen / 12Hó Garancia
- Apple iPhone 12 Pro 256GB, Kártyafüggetlen, 1 Év Garanciával
- 263 - Lenovo ThinkBook 16p (G6 IAX) - Intel Core U9 275HX, RTX 5060
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
