abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 03:55 | IT novinky

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) vydal Přehled kybernetických incidentů za září 2024 (pdf). Evidováno bylo 21 kyberbezpečnostních incidentů. Na účastníky mezinárodní bezpečnostní konference IISS Prague Defence Summit cílila phishingová kampaň.

    Ladislav Hagara | Komentářů: 0
    včera 16:11 | Komunita

    Minetest (Wikipedie), tj. multiplatformní open source voxelový herní engine a hra inspirovaná Minecraftem, se přejmenovává na Luanti.

    Ladislav Hagara | Komentářů: 0
    včera 15:44 | IT novinky

    Minulý týden byl představen (YouTube) Rocky Linux from CIQ (RLC) aneb Rocky Linux s komerční podporou od společnosti CIQ. Cena podpory je 25 000 dolarů ročně bez ohledu na počet jader CPU, serverů nebo virtuálních počítačů.

    Ladislav Hagara | Komentářů: 0
    včera 14:22 | IT novinky

    Byla aktualizována časová osa podpory Manifest V2 v Chrome, tj. verze API rozšíření webových prohlížečů. V průběhu týdnů budou rozšíření Chrome používající tuto verzi deaktivována a uživatelům budou doporučeny alternativy používající Manifest V3. Uživatelé Chrome si mohou pomocí "chrome://extensions/" zjistit, kterých rozšíření se to týká. Například také uBlock Origin. Podporu Manifest V2 v Chrome bude možné dočasně prodloužit nastavením ExtensionManifestV2Availability.

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

    Sada nástrojů Distrobox pro spouštění libovolných linuxových distribucí v terminálu pomocí kontejnerů byla vydána ve verzi 1.8.0.

    Ladislav Hagara | Komentářů: 0
    včera 10:55 | Komunita

    Byly zpracovány a zveřejněny videozáznamy z konference LinuxDays 2024. Přistupovat k nim lze přímo z programu, kde jsou také odkazy na prezentace, nebo z YouTube.

    Ladislav Hagara | Komentářů: 4
    13.10. 22:22 | Nová verze

    Byla vydána nová verze 1.4 svobodného multiplatformního vektorového grafického editoru Inkscape. Podrobný přehled novinek i s náhledy a animovanými gify v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    13.10. 21:55 | Nová verze

    Softwarový KVM Input Leap (dříve Barrier) byl vydán ve verzi 3.0.0 (a následně pár opravných). Přidává podporu Waylandu a Qt6. Jde o první vydání od přesunu z projektu Barrier v roce 2021. Barrier vznikl jako fork Synergy, jehož verze 2 byla částečně proprietární a její bezplatná open-source verze měla umělá omezení.

    Fluttershy, yay! | Komentářů: 0
    13.10. 21:00 | Nová verze

    Na čem aktuálně pracují vývojáři GNOME a KDE? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE.

    Ladislav Hagara | Komentářů: 9
    12.10. 06:33 | Komunita

    Přímý přenos (YouTube) z konference LinuxDays 2024, jež probíhá tento víkend v Praze v prostorách Fakulty informačních technologií Českého vysokého učení v Praze (FIT ČVUT). Na programu je spousta zajímavých přednášek.

    Ladislav Hagara | Komentářů: 3
    Rozcestník

    Dotaz: FirebirdSQL - práce s DATE (GROUPování po dni, měsíci, roce...)

    Johny z Podoli avatar 19.4.2011 12:16 Johny z Podoli | skóre: 26 | blog: rocfdebian
    FirebirdSQL - práce s DATE (GROUPování po dni, měsíci, roce...)
    Přečteno: 307×
    Mám tabulku bankovní výpis, obsahuje mj. sloupce DATUM, ČÁSTKA. Datum je YYYY-MM-DD, já potřebuji tento sloupec "virtuálně" rozddělit na dloupec DATUM_ROK, DATUM_MESIC, DATUM_DEN abych mohl podle těchto sloupců různě "GROUPNOUT" a sečíst kolik peněz v kterém dni přišlo. Od rána trápím google ale buď to nikdo neřeší nebo je to trivka a já na to jen nemohu přijít.

    Potřebuji toto řešit obecně, programuji funkci na generování grafů, jedna osa bude vždy typu DATE/TIMESTAMP a druhá bude "cokoliv" se SUM/AVG a podobně :-)

    prosím postrčte mě...

    děkuji převelice ;-)

    Johny
    Můj web o táborech: Letní dětské tábory, Hudební tábor , Můj nový blog na Nul.cz

    Řešení dotazu:


    Odpovědi

    19.4.2011 16:25 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: FirebirdSQL - práce s DATE (GROUPování po dni, měsíci, roce...)
    Něco jako:
    SELECT SUM(castka) AS sumcastka FROM bankovnivypis GROUP BY EXTRACT(MONTH FROM datum)
    (nemám po ruce funkční FirebirdSQL na odzkoušení…)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    Johny z Podoli avatar 19.4.2011 21:09 Johny z Podoli | skóre: 26 | blog: rocfdebian
    Rozbalit Rozbalit vše Re: FirebirdSQL - práce s DATE (GROUPování po dni, měsíci, roce...)
    Děkuji velice, to je přesně to, co jsem potřeboval.

    s pozdravem, Johny
    Můj web o táborech: Letní dětské tábory, Hudební tábor , Můj nový blog na Nul.cz
    20.4.2011 08:03 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: FirebirdSQL - práce s DATE (GROUPování po dni, měsíci, roce...)
    Není zač.
    Jen poznámka, výše uvedené vyjede jen 12 záznamů i za 5let, je to třeba doplnit o WHERE na max. 1 rok, nebo doplnit GROUP-ovaní.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    Johny z Podoli avatar 20.4.2011 09:03 Johny z Podoli | skóre: 26 | blog: rocfdebian
    Rozbalit Rozbalit vše Re: FirebirdSQL - práce s DATE (GROUPování po dni, měsíci, roce...)
    To je mi úplně jasné ;-) Ještě jedna věc mě napadá, která by se mi líbila. Nicméně toto je asi už mimo hranice SQL a budu si muset poradit jinak. Když v nějaký den prostě není na účtu pohyb, tak ten den z výsledku zccela vypadne, klasicky SO a NE. V grafu je ale vhodné mít hezky den po dni, kvuli měřítku a pod. Nemáte nějaký nápad, jak tam těch "30" dní dát na tvrdo? Napadlo mě udělat si tabulku s 30 "číslama" a pak to leftjoinovat na ty datumy... nic lepšího asi není? Co?
    Můj web o táborech: Letní dětské tábory, Hudební tábor , Můj nový blog na Nul.cz
    20.4.2011 11:21 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: FirebirdSQL - práce s DATE (GROUPování po dni, měsíci, roce...)
    Myslím si, že je to běžný postup, mít pomocnou tabulku a s tou to spojit.
    Osobně mívám v DB pro tento účel (souvislé řady) často tabulku jen s id 0-10000 (většinou jen pro dny v měsíci, týdnu či roku).
    PS: Ale stejně musíte ořezávat 28/29/30/31 podle daného měsíce :)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    20.4.2011 13:59 kuka
    Rozbalit Rozbalit vše Re: FirebirdSQL - práce s DATE (GROUPování po dni, měsíci, roce...)
    V principu se ta casova osa nejak "vygenerovat" asi musi. Delal bych to nejlepe pres dual, pripadne pres transakcni tabulku, do ktere bych si pred vytvarenim vygeneroval dny z casoveho obdobi, ktere mne zajima. To tedy v Oracle, nevim jestli je analogie takovych veci ve Firebirdu.
    20.4.2011 15:27 Aleš
    Rozbalit Rozbalit vše Re: FirebirdSQL - práce s DATE (GROUPování po dni, měsíci, roce...)
    Viděl jsem řešení pomocí vložené procedury. Procedura generovala číselnou řadu pro zadaný měsíc a rok.
    okbob avatar 20.4.2011 16:28 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: FirebirdSQL - práce s DATE (GROUPování po dni, měsíci, roce...)
    PostgreSQL má nejen pro tyto účely funkci generate_series
    20.4.2011 18:16 l0gik | skóre: 22
    Rozbalit Rozbalit vše Re: FirebirdSQL - práce s DATE (GROUPování po dni, měsíci, roce...)
    Bez uložené procedury by šlo použít rekurzivní dotazy. Něco jako

    WITH RECURSIVE date_series(date) AS (SELECT CAST('1.1.2000' AS DATE) FROM rdb$database UNION SELECT date + 1 FROM date_series WHERE date + 1 <= '1.1.2010' ) SELECT * FROM date_series;
    20.4.2011 18:22 l0gik | skóre: 22
    Rozbalit Rozbalit vše Re: FirebirdSQL - práce s DATE (GROUPování po dni, měsíci, roce...)
    PS: Jestli rekurzivní dotazy neznáš, může to na Tebe působit jako magie, ale dotaz výše Ti vygeneruje řadu dat od 1.1.2000 do 1.1.2010 - a dokonce myslím i efektivnějc než uložená procedura. Zkoušel jsem ho teda jen v postgresql, ale dostatečně novej Firebird by to měl umět taky.

    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.