- Az aktuális Xbox konzolokon is megfogja majd a játékos kezét a Copilot
- ASUS blog: 2K-tól a 4K-ig és tovább a Radeon RX 9000-es szériával
- NVIDIA® driverek topikja
- Vezetékes FÜLhallgatók
- Autós kamerák
- Milyen processzort vegyek?
- Vezetékes FEJhallgatók
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
Ú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
- Anglia - élmények, tapasztalatok
- Az aktuális Xbox konzolokon is megfogja majd a játékos kezét a Copilot
- EAFC 26
- Kávé kezdőknek - amatőr koffeinisták anonim klubja
- Építő/felújító topik
- ASUS blog: 2K-tól a 4K-ig és tovább a Radeon RX 9000-es szériával
- Crimson Desert
- NVIDIA® driverek topikja
- Vezetékes FÜLhallgatók
- Autós kamerák
- További aktív témák...
- 241 - Lenovo Legion 5 (15IRX10) - Intel Core i7-13650HX, RTX 5060
- 14" Dell Latitude laptopok: 5400, 5480, 5490, 7480, E6410, E6440, E5450 / SZÁMLA + GARANCIA
- Motorola Edge 40 Pro 256GB, Kártyafüggetlen, 1 Év Garanciával
- BESZÁMÍTÁS! Gigabyte B760 i5 12600KF 16GB DDR4 512GB SSD RTX 3080 10GB Asus A31 PLUS TG ARGB 750W
- ÚJ AKCIÓS HP EliteBook 6 G1a Ryzen 5 PRO 230 16GB DDR5 512GB FHD+ 16:10 már jobbik kijelző, gar 2028
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


