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 07:33 | Komunita

    O víkendu probíhá konference OpenAlt 2025 (Stream). Na programu je spousta zajímavých přednášek. Pokud jste v Brně, stavte se. Vstup zdarma.

    Ladislav Hagara | Komentářů: 0
    včera 00:55 | IT novinky

    Josef Průša představil novou velkoformátovou uzavřenou CoreXY 3D tiskárnu Prusa CORE One L a nový open source standard chytrých cívek OpenPrintTag i s novou přepracovanou špulkou.

    Ladislav Hagara | Komentářů: 7
    31.10. 18:33 | IT novinky

    Na GOG.com běží Autumn Sale. Při té příležitosti je zdarma hororová počítačová hra STASIS (ProtonDB: Platinum).

    Ladislav Hagara | Komentářů: 0
    31.10. 13:22 | Komunita

    Ubuntu 25.10 má nově balíčky sestavené také pro úroveň mikroarchitektury x86-64-v3 (amd64v3).

    Ladislav Hagara | Komentářů: 8
    31.10. 01:22 | Nová verze

    Byla vydána verze 1.91.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    31.10. 00:11 | IT novinky

    Ministerstvo průmyslu a obchodu vyhlásilo druhou veřejnou soutěž v programu TWIST, který podporuje výzkum, vývoj a využití umělé inteligence v podnikání. Firmy mohou získat až 30 milionů korun na jeden projekt zaměřený na nové produkty či inovaci podnikových procesů. Návrhy projektů lze podávat od 31. října do 17. prosince 2025. Celková alokace výzvy činí 800 milionů korun.

    Ladislav Hagara | Komentářů: 5
    30.10. 23:44 | Komunita

    Google v srpnu oznámil, že na „certifikovaných“ zařízeních s Androidem omezí instalaci aplikací (včetně „sideloadingu“) tak, že bude vyžadovat, aby aplikace byly podepsány centrálně registrovanými vývojáři s ověřenou identitou. Iniciativa Keep Android Open se to snaží zvrátit. Podepsat lze otevřený dopis adresovaný Googlu nebo petici na Change.org.

    Ladislav Hagara | Komentářů: 0
    30.10. 15:22 | Nová verze

    Byla vydána nová verze 18 integrovaného vývojového prostředí (IDE) Qt Creator. S podporou Development Containers. Podrobný přehled novinek v changelogu.

    Ladislav Hagara | Komentářů: 2
    30.10. 12:55 | Nová verze

    Cursor (Wikipedie) od společnosti Anysphere byl vydán ve verzi 2.0. Jedná se o multiplatformní proprietární editor kódů s podporou AI (vibe coding).

    Ladislav Hagara | Komentářů: 1
    30.10. 02:55 | Nová verze

    Google Chrome 142 byl prohlášen za stabilní. Nejnovější stabilní verze 142.0.7444.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 20 bezpečnostních chyb. Za nejvážnější z nich bylo vyplaceno 50 000 dolarů. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (36%)
     (48%)
     (19%)
     (18%)
     (22%)
     (16%)
     (20%)
     (16%)
     (17%)
    Celkem 298 hlasů
     Komentářů: 15, poslední dnes 08:25
    Rozcestník
    Štítky: není přiřazen žádný štítek

    Dotaz: ako spravne uchovavat historiu v sql

    8.2.2023 22:18 frufru
    ako spravne uchovavat historiu v sql
    Přečteno: 1592×
    zdravim, potreboval by som poradit ako riesit nasledujuci problem.

    mam
    tabulku zaznamy kde su stlpce id, datum, kusy, operacia_id
    tabulku operacie kde su stlpce id, nazov, sadzba_id
    tabulka sadzby kde su stlpce id, hodnota_sadzby, platna_od, platna_do

    sadzba sa moze v case menit - ked sa zmeni tak vytvorim novy riadok v tabulke sadzby s rovnakym id a roznou hodnotou sadzby a datumami platnosti.

    aky je spravny sposob na ukladanie takychto "historickych" dat?

    lebo toto sice funkcne je, ale nepripada mi to ako spravny navrh. navyse takychto stlpcov, kde sa data casovo menia a chcem mat aj ich historiu mam v realnej db viac. vysledny select potom musi okrem spojovacej podmienky, pridat aj podmienku na vyber spravnej sadzby pre dany datum.
    SELECT
      *
    FROM
      zaznamy z
        LEFT JOIN
          operacie o ON o.id = z.operacia_id
        LEFT JOIN
          sadzba s ON s.id = o.sadzba_id
            AND
          z.datum BETWEEN s.platna_od AND s.platna_do
    
    vopred dakume kazdemu, kto mi pomoze vybrat sa spravnym smerom :-)

    Odpovědi

    8.2.2023 23:21 BoneFlute | skóre: 3
    Rozbalit Rozbalit vše Re: ako spravne uchovavat historiu v sql
    Je nějaký důvod, proč evidovat platnost pro každý sloupec extra?

    Pokud máš splněno, že tě zajímá jen aktuálně platný záznam, nebo naopak historický, tak je možné historické záznamy odlifrovat do extra tabulky (něco jako sadzba_history).

    Přijde mi celkem pochopitelné, že když mám historické záznamy, tak musím uvést pro jaké období záznamy chci.

    9.2.2023 00:06 frufru
    Rozbalit Rozbalit vše Re: ako spravne uchovavat historiu v sql
    dovod preco evidovat platnost pre kazdy stlpce extra moze byt napr. pri udajoch o zamestnancoch. zamestnanec moze mat pracovnu poziciu, pracuje na urcitom oddeleni, ma veduceho,atd. moze napr. zmenit iba pracovnu poziciu a ostava na rovnakom oddeleni pod rovnakym veducim, preto kazdy takyto stlpec by mal mat extra evidovanu platnost.
    12.2.2023 05:41 BoneFlute | skóre: 3
    Rozbalit Rozbalit vše Re: ako spravne uchovavat historiu v sql
    Rozumím. V takovém případě bych to dělal přes řádku a nepáral bych se s tím.
    AraxoN avatar 9.2.2023 06:29 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: ako spravne uchovavat historiu v sql
    Dôvod to môže mať. Napríklad vo fakturačnom systéme. Majme cenu, ktorá sa mení k 1.1., ale v decembri sa fakturuje predpokladaná spotreba v januári, zároveň s vyúčtovaním za december. Vtedy sa môžu rôzne ceny za to isté stretnúť dokonca aj na jednej a tej istej faktúre.
    9.2.2023 14:31 frufru
    Rozbalit Rozbalit vše Re: ako spravne uchovavat historiu v sql
    este podotazka...

    mal by som pre tabulku sadzby pouzit unikatny index ktory bude zlozeny z id, platna_od, platna_do za predpokladu, ze hodnota sadzby ktora sa bude v priebehu casu menit a moze byt teoreticky v roznych obdobiach aj rovnaka a zaroven datumy platnosti sa nebudu nikdy prekryvat?

    dik za odpovede.
    9.2.2023 17:28 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: ako spravne uchovavat historiu v sql
    Ako riešiš zľavu pre VIP klientov?
    debian.plus@protonmail.com
    9.2.2023 17:33 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: ako spravne uchovavat historiu v sql
    Ako chceš riešiť zľavu pri väčšom množstve?
    debian.plus@protonmail.com
    10.2.2023 20:25 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: ako spravne uchovavat historiu v sql
    Pokud s těmi historickými hodnotami potřebujete běžně pracovat, pak to ukládejte tak, jak píšete. Pokud obvykle pracujete s aktuální hodnotou a jenom občas potřebujete zjistit historické údaje, je lepší mít v hlavní tabulce jen aktuální záznam a vedle mít tabulku s historií.

    platnost_od a platnost_do budou v tabulce jen jednou, přičemž ničemu nevadí, pokud v záznamech pro různá období budou některé hodnoty stejné. Pokud se ale ty hodnoty mění úplně nezávisle na sobě, pak určitě nepatří do jedné tabulky, takže nebudete mít problém s více platnost_od a platnost_do v jedné tabulce.
    23.2.2023 09:28 Superexpert_na_databazy
    Rozbalit Rozbalit vše Re: ako spravne uchovavat historiu v sql
    V nasej aplikacii historiu udrziavame pomocou views. Mame jednu tabulku so vsetkymi cenami, ktore sa menia v case, cennik(id, datum, schvalovatel, tovar_kategoria_id, tovar_id, cena, dph). Nad touto tabulkou mame porobene views, ktore aplikacii serviruju vzdy poslednu aktualnu cenu. Tak isto cez views robime prehlady, statistiky a reporty.

    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.