abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
včera 23:33 | Zajímavý projekt

Na Humble Bundle byla spuštěna akce Humble Book Bundle: Web Programming by O'Reilly. Za 1 dolar a více lze koupit 5 elektronických knih, za 8 dolarů a více lze koupit 11 elektronických knih a za 15 dolarů a více lze koupit 17 elektronických knih věnovaných webovému programování od nakladatelství O'Reilly Media. Část ceny lze určit charitě.

Ladislav Hagara | Komentářů: 0
včera 23:00 | Pozvánky

Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 162. brněnský sraz, který proběhne v pátek 22. března od 18:00 v restauraci Slatinský šenk na adrese Zlínská 12.

Ladislav Hagara | Komentářů: 0
včera 16:22 | Nová verze

Jonathan Thomas oznámil vydání nové verze 2.4.4 video editoru OpenShot (Wikipedie). Přehled novinek na YouTube. Zdrojové kódy OpenShotu jsou k dispozici na GitHubu. Ke stažení je také balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo na spouštění a spustit.

Ladislav Hagara | Komentářů: 0
včera 15:22 | Zajímavý článek

Mozilla.cz informuje, že Firefox bude mít nového správce hesel Lockbox. Lockbox bude integrován s Firefox Monitorem – službou pro varování při únicích dat.

Ladislav Hagara | Komentářů: 0
včera 11:33 | Nová verze

Webový prohlížeč Falkon založený na QtWebEngine (Blink) byl vydán ve verzi 3.1. Podle seznamu změn zlepšuje integraci v rámci KDE, opravuje několik chyb a stabilizuje podporu rozšíření v Python a přidává podporu QML.

Fluttershy, yay! | Komentářů: 2
včera 11:22 | Komunita

Česká Wikipedie je dnes vypnuta. Na protest proti evropské reformě autorského práva.

Ladislav Hagara | Komentářů: 13
20.3. 18:11 | Nová verze

Po půl roce vývoje od vydání verze 7.0.0 byla vydána verze 8.0.0 překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, clang-tools-extra, LLD a Libc++.

Ladislav Hagara | Komentářů: 0
20.3. 17:44 | Nová verze

Bylo vydáno Eclipse IDE 2019-03 aneb Eclipse 4.11. Nově vychází toto vývojové prostředí čtvrtletně. Představení novinek na YouTube.

Ladislav Hagara | Komentářů: 0
20.3. 01:11 | IT novinky

V říjnu loňského roku společnost Google představila hráčům počítačových her Project Stream umožňující streamování AAA her do webového prohlížeče Chrome. Včera na konferenci GDC 2019 (Game Developers Conference) společnost Google oficiálně představila (YouTube) pokračování projektu – herní platformu Stadia. V Česku a na Slovensku je služba Stadia zatím nedostupná.

Ladislav Hagara | Komentářů: 24
19.3. 23:11 | Nová verze

Byla vydána Java 12 / JDK 12. Nových vlastností (JEP - JDK Enhancement Proposal) je 8. Nová Java / JDK vychází každých 6 měsíců.

Ladislav Hagara | Komentářů: 2
Kolik balíčků (v tisících) máte nainstalovaných na svém systému?
 (4%)
 (13%)
 (33%)
 (30%)
 (20%)
 (3%)
 (2%)
 (1%)
 (3%)
Celkem 224 hlasů
 Komentářů: 21, poslední včera 23:40
Rozcestník

Dotaz: Oracle 11g rowToColumn/LISTAGG

6.4.2017 08:01 chucky
Oracle 11g rowToColumn/LISTAGG
Přečteno: 1205×
Moze mi niekto nazorne ukazat SQL prikaz s vyuzitim LISTAGG? Mam
SELECT
  col1,
  col2,
  ...
  coln,
  SELECT a where b > c from TAB2
FROM TAB1;
, kde vysledkom vnoreneho selectu moze byt viacero riadkov, teda napr.:
+------+
| val1 |
| val2 |
| ...  |
| valn |
+------+
Ja potrebujem tieto riadky dostat do jednej stlpca, takze vysledok celeho selectu bude takyto:
+-----------------------------------------------+
| col1 | col2 | ... | coln | a                  |
| ...  | ...  | ... | ...  | val1,val2,...,valn |
+-----------------------------------------------+

Odpovědi

6.4.2017 09:47 jekub
Rozbalit Rozbalit vše Re: Oracle 11g rowToColumn/LISTAGG
Vas priklad mi prijde nesmyslny, nejspis chcete neco jineho. Mozna nejake spojeni tab1, tab2 a listagg podle group by. Nicmene ptal jste se na tohle:

drop table tab1;
create table tab1(
    col1 varchar2(10),
    col2 varchar2(10),
    col3 varchar2(10)
);
insert into tab1 values('col1','col2','col3');
commit;

drop table tab2;
create table tab2(
    val varchar2(10)
);
insert into tab2 values('val1');
insert into tab2 values('val2');
insert into tab2 values('val3');
commit;

select tab1.*,(select listagg(val,',') within group (order by val) from tab2) from tab1;
6.4.2017 15:48 gnat
Rozbalit Rozbalit vše Re: Oracle 11g rowToColumn/LISTAGG
LISTAGG zagreguje sloupec z více řádek do jednoho stringu, transormaci řádků do sloupců umí např. analytická funkce LAG
13.4.2017 10:02 Daniel
Rozbalit Rozbalit vše Re: Oracle 11g rowToColumn/LISTAGG
Ale kdeže, LAG dělá něco úplně jiného. A sice, že v množině seřazené podle nějakých klíčů - tohle řazení je ale nezávislé na order by výsledné množiny záznamů - vypočítá hodnotu sloupce jako hodnotu zadaného sloupce z předešlého řádku, volitelně jak moc předešlý, defaulně 1. Pro víc detailů nastudujte analytické funkce
6.4.2017 18:40 Ivan
Rozbalit Rozbalit vše Re: Oracle 11g rowToColumn/LISTAGG
Pokud jde o prevod z radek na sloupce a naopak, tak k tomu slouzi klazule PIVOT (popr. PIVOT XML) a UNPIVOT. Pokud chces vice hodnot v jednom policku tabulky tak pouzij LISTAGG popr. XMLAGG.

PS: mel bys' jeste zapracovat na zadani. Ocekavany vystupni format neni uplne jednoznacny.

8.5.2017 00:44 citanus | skóre: 11 | Cork (Ireland)
Rozbalit Rozbalit vše Re: Oracle 11g rowToColumn/LISTAGG

CONCAT

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.