Hirdetés
- Milyen belső merevlemezt vegyek?
- Friss alaplapszériát avat az ASRock
- Projektor topic
- Kormányok / autós szimulátorok topikja
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Milyen CPU léghűtést vegyek?
- Az elmúlt 30 év legjobb processzorai
- OLED TV topic
- Kegyvesztett lehet a Radeon termékskála középső tagja
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
Új hozzászólás Aktív témák
-
kösz mindkettőtöknek, de nekem ez egy kicsit bonyolult

én a következőkre jutottam: neten talált ötlet, hogy rakjak a számsorra egy rank()-et. lényeg, hogy subselectben kell legyen a számsor, mert a distinct meg a rank postgresben nem fér össze.a szám-rank() az gyakorlatilag megmondja, hogy hány szám maradt ki eddig a sorból. ami azt is jelenti, hogy egy részsorozaton belül a szám-rank() konstans. vagyis kezelhető group by-jal.
select min(number),max(number),count(*) from (
select number,number-rank() over (order by number) as ranked from (
select distinct number as number from item order by 1) as w
) as q group by ranked order by 1;a legbelső selectből kitöröltem a nem publikus részt.
-
nyunyu
félisten
válasz
bambano
#3645
üzenetére
Ilyesmi feladatba már sikerült belefutnom melóhelyen.
Ottani kódom erősen leegyszerűsítve.DB adminjaink persze nem szoktak szeretni érte, amikor több millió soros táblákból kell kibogarásznom pár tízezer hasznos rekordot, majd azokat intervallumokba rendezni...
Query plant kielemezve mindenféle Cartesian join kerülendő szakszavakkal dobálózva próbálják levenni a rontást a DB performanciáról. -
tm5
tag
válasz
bambano
#3645
üzenetére
Ezt sqlfiddleben raktam össze:
/*schema setup:*/
create table t1(c1 integer);
insert into t1 values (1);
insert into t1 values (2);
insert into t1 values (3);
insert into t1 values (4);
insert into t1 values (6);
insert into t1 values (7);
insert into t1 values (10);
insert into t1 values (11);
/*a query:*/
select * from (
select c1,
CASE
WHEN plus1 != kovetkezo THEN 'vegelem'
WHEN minus1 != elozo THEN 'kezdoelem'
WHEN elozo IS NULL THEN 'kezdoelem'
WHEN kovetkezo IS NULL THEN 'vegelem'
ELSE 'kozbulso'
END tipus
from
(select c1, c1-1 minus1, c1+1 plus1, lag(c1) over () elozo, lead(c1) over () kovetkezo from t1) t) tt
where tipus != 'kozbulso';ezután már csak egy pivot kéne, de arra már nem volt energiám

-
postgresben érdekelne az év elejei agyzsibbasztás

van egy halmazom egész számokból. ezeket kellene intervallumok sorozataként felsorolni. tehát ha van 1,2,3,4,6,7,10,11, akkor kapnom kellene egy 1-4,6-7,10-11 sorozatot.
Új hozzászólás Aktív témák
Hirdetés
- Milyen belső merevlemezt vegyek?
- Friss alaplapszériát avat az ASRock
- Projektor topic
- Kormányok / autós szimulátorok topikja
- EAFC 26
- Lexus, Toyota topik
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Hardcore café
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Samsung kuponkunyeráló
- További aktív témák...
- MacBook PRO 16 M1 CHIP magyar 16GB/1024GB SSD!! Alig használt! Akkumlator 97%!
- Benq ZOWIE XL2746K TN 240Hz DyAc 27 Inch Gaming Monitor for Esports
- Gamer PC-Számítógép! Csere-Beszámítás! I5 12400F / RTX 3060 12GB / 16GB D4 / 256+512GB SSD
- Samsung galaxyS8ultra
- MacSzerez.com - 2021 MacBook Pro 14" Retina / M1 Pro / 16GB RAM / 1TB SSD / Astro/ AppleCare+
- ÁRGARANCIA!Épített KomPhone Ryzen 5 5600X 16/32/64GB RAM RTX 5060 8GB GAMER PC termékbeszámítással
- HP EliteOne 800 G5 All-in-One i5-8500 32GB 1000GB 23.8" Érintőkijelző!! 1 év garancia
- Apple iPhone 14 256GB,Újszerű,Dobozaval,12 hónap garanciával
- Keresünk Galaxy S22/S22+/S22 Ultra
- Egyedi névre szóló karácsonyfadísz rendelhető! 3D Nyomtatott!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs



