Hirdetés
- Teljesen szürreális, ami az RTX 5070 Ti kapcsán történik…
- AMD Navi Radeon™ RX 9xxx sorozat
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- ThinkPad (NEM IdeaPad)
- Milyen kompakt digitális fényképezőgépet?
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- OLED TV topic
- VR topik
- Olvad a hó, de ez nem zavarja a hardvereket
- Gaming notebook topik
Új hozzászólás Aktív témák
-
nyunyu
félisten
válasz
Szancsó
#4646
üzenetére
Én kiemelném egy CTEbe az A, B összege oszlopokat, és kapna egy sorszámot összeg szerint csökkenő sorrendben, majd következő lépésben ebből válogatnám le a sorszám<=5-öt ("top 5"), és hozzáunióznám a szumma(B összeg)-et, ahol sorszám>5.
Így az eredeti táblát csak egyszer kell végigolvasni, második lépésben uniót képző 2 select már a memóriában lévő párszáz-ezer soros aggregátumból dolgozik, minimális többletköltséggel.
Valahogy így:
with summa as (
select a,
sum(b) sum_b,
row_number() over (partition by a order by sum(b) desc) rn
from tabla5
group by a),
top5_summa as (
select a,
sum_b,
rn
from summa
where rn<=5
union
select 'Többi' as a,
sum(sum_b) as sum_b,
6 as rn
from summa
where rn>5)
select a,
sum_b
from top5_summa
order by rn;Nem tudom, Firebird ismeri-e ezt a szintaxist, SQL Server kb. 2005 óta igen, meg az Oracle 11 alatt is működik.
Új hozzászólás Aktív témák
- Milyen routert?
- Teljesen szürreális, ami az RTX 5070 Ti kapcsán történik…
- exHWSW - Értünk mindenhez IS
- Autós topik
- Mobilinternet
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Viber: ingyen telefonálás a mobilodon
- Tőzsde és gazdaság
- World of Tanks - MMO
- Milyen okostelefont vegyek?
- További aktív témák...
- HIBÁTLAN iPhone 13 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS4345
- REFURBISHED és ÚJ - HP USB-C/A Universal Dock G2 (5TW13AA) (DisplayLink)
- Bomba Ár! Lenovo ThinkPad L14 G2i - i5-1145G7 I 16GB I 256SSD I 14" FHD Touch I Cam I W11 I Gar
- Keresünk Galaxy S23/S23+/S23 Ultra/S23 Fe
- Lenovo X13 Yoga 2in1 Thinkpad WUXGA IPS Touch i5.1135G7 16GB 256GB Intel Iris XE Win11 Pro Garancia
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


