Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.
Fossil (Wikipedie) byl vydán ve verzi 2.24. Jedná se o distribuovaný systém správy verzí propojený se správou chyb, wiki stránek a blogů s integrovaným webovým rozhraním. Vše běží z jednoho jediného spustitelného souboru a uloženo je v SQLite databázi.
Byla vydána nová stabilní verze 6.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 124. Přehled novinek i s náhledy v příspěvku na blogu. Vypíchnout lze Spořič paměti (Memory Saver) automaticky hibernující karty, které nebyly nějakou dobu používány nebo vylepšené Odběry (Feed Reader).
OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.
Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.
R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.
IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.
Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.
Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.
Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.
id | polozka 1 | darcekova krabica 2 | kancelarsky darcek 3 | pero 4 | ceruzka 5 | tuha 6 | voucher 7 | obalt2
t1_id | obsah (opäť je to odkaz na t1.id) 1 | 2 1 | 6 2 | 3 2 | 4 4 | 5 4 | 7Čiže máme tabuľku t1, ktorá obsahuje nejaký produkt, ktorý sa z niečoho skladá a to zloženie je definované v tabuľke t2. Čiže v tomto príklade za darčeková krabica skladá z kancelárskeho darčeka a vouchera. Ale kancelársky darček sa skladá z pera a ceruzky. A nakoniec ceruzka sa skladá z tuhy a obalu. A ja potrebujem všetky id z ktorých sa skladá nadradený produkt (v tomto príklade darčeková krabica). Predpokladám, že toto je úloha pre rekurziu a zatiaľ som stvoril takéto niečo:
delimiter // create procedure get_product(in id int) this_proc:begin declare loop_begin int; declare recursion int; set loop_begin=0; set recursion=0; set @trans=(select concat("trans_", replace(uuid(), '-', ''))); set @create = concat('create temporary table if not exists ', @trans, '(id int unsigned not null auto_increment primary key, data int)'); prepare stmt from @create; execute stmt; deallocate prepare stmt; set @insert = concat('insert into ', @trans, ' select NULL, obsah from t2 where t1_id=', id); prepare stmt from @insert; execute stmt; deallocate prepare stmt; set @select = concat('select max(id) into @loop_end from ', @trans); prepare stmt from @select; execute stmt; deallocate prepare stmt; if(@loop_end is not null) then while(loop_begin<@loop_end) do set loop_begin=loop_begin+1; set @select = concat('select data into @result from ', @trans, ' where id=', loop_begin); prepare stmt from @select; execute stmt; deallocate prepare stmt; set recursion=@result; select recursion; call get_product(recursion); end while; end if; end// delimiter ;Ale táto procedúra mi končí keď sa dostane na položku ktorá už nikde neodkazuje. Čiže v tomto príklade dostanem 1,2,3. Vie mi s tým niekto pomôcť? Za všetky rady vám vopred veľmi pekne ďakujem.
Řešení dotazu:
id
a parent_id
. A pak tam budeš mít vypočítávané sloupečky tree_left
, tree_right
, tree_depth
. Případně ještě můžeš přidat tree_root_id
, pokud máš mnoho malých stromů (pro rychlejší updaty).
Tiskni Sdílej: