Hirdetés
- Samsung Galaxy Watch8 - Classic - Ultra 2025
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- Okosóra és okoskiegészítő topik
- MWC 2026: Kezünkben a Vivo V70, megvan a magyar ára is
- Google Pixel topik
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Nem lesz Redmi Note 16, évet ugrik a sorozat
- Xiaomi 17 Ultra - jó az optikája
- iPhone topik
- MWC 2026: Megnéztük, hol tart a Clicks Power Keyboard és Communicator
Ú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
- Samsung Galaxy Watch8 - Classic - Ultra 2025
- Crimson Desert
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- Facebook és Messenger
- Okosóra és okoskiegészítő topik
- MWC 2026: Kezünkben a Vivo V70, megvan a magyar ára is
- Elektromos cigaretta 🔞
- Mibe tegyem a megtakarításaimat?
- OLED TV topic
- Okos Otthon / Smart Home
- További aktív témák...
- HP ProBook 6560b, 15,6" HD+, i5-2520M CPU, 8GB DDR3, 500GB HDD, W10, Számla, garancia ( olvasd végi
- Lenovo Thinkpad L450, 14" HD, i3-5005U CPU, 8GB DDR3, 128GB SSD, W11, Számla, 1 év garancia ( olvas
- HP ProBook 650 G2 15,6" FHD, i5-6200 CPU, 8GB DDR4, 256GB SSD, W11, Számla, 1 év garancia ( olvasd
- Dell Latitude 5490, 14" FHD IPS, i5-7300U CPU, 8GB DDR4, 256GB SSD, W11, Számla, 1 év garancia ( ol
- Dell Latitude 7320 Carbon /i5-1145G7/16GB/256GB SSD/13.3" FHD laptop
- 270 - Lenovo Yoga Pro 9 (16IAH10) - Intel Core U9 285H, RTX 5070 (ELKELT)
- Apple iPhone XR 128GB, Kártyafüggetlen, 1 Év Garanciával
- iPhone 15 Pro 128GB Blue Titanium -1 ÉV GARANCIA - Kártyafüggetlen, MS4589
- Dell Latitude 5290 i5 8350U, 8GB RAM, SSD, jó akku, EU bill., szép állapot, számla, 6 hó gar - 12.18
- Sandisk Portable SSD 2TB!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

