Před 25 lety, ve čtvrtek 29. dubna 1999, byla spuštěna služba "Úschovna".
Byla vydána nová verze 24.04.28 s kódovým názvem Time After Time svobodného multiplatformního video editoru Shotcut (Wikipedie) a nová verze 7.24.0 souvisejícího frameworku MLT Multimedia Framework. Nejnovější Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.
Byla vydána verze 5.30 dnes již open source operačního systému RISC OS (Wikipedie).
V aktuálním příspěvku na blogu počítačové hry Factorio (Wikipedie) se vývojář s přezývkou raiguard rozepsal o podpoře Linuxu. Rozebírá problémy a výzvy jako přechod linuxových distribucí z X11 na Wayland, dekorace oken na straně klienta a GNOME, změna velikosti okna ve správci oken Sway, …
Rakudo (Wikipedie), tj. překladač programovacího jazyka Raku (Wikipedie), byl vydán ve verzi #171 (2024.04). Programovací jazyk Raku byl dříve znám pod názvem Perl 6.
Společnost Epic Games vydala verzi 5.4 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.
Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.
Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.
Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.
Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.
Řešení dotazu:
UNIQUE INDEX
bud na (symbol, "datetime")
alebo ("datetime", symbol)
- poradie by som volil podla velkosti time spanu v selecte a tiez variability symbolov v tabulke. EXPLAIN
konkretnej query na konkretnych datach napovie.(smallint primary key, varchar(10) not null)
a previazanie cez cudzi kluc.double precision
by som pouzil numeric.
Vykonanie dotazu by mozno zrychlilo vyclenenie symbolov do inej tabulky, napr. (smallint primary key, varchar(10) not null)
a previazanie cez cudzi kluc
Jak to?
Protože SMALLINT se indexuje lépe, než VARCHAR(10).---
priklady pre pgsql (stale nepozname cielovu DB):Ano, asi se lépe indexuje, ale vyhledávání je pak už stejně rychlé, ne?smallint je fixed-size a ma len 2 bajty (a dovoluje pass-by-value), teda je efektivnejsi pri spracovani a indexovani, jednoducho nema overhead, ktorym "trpi" varlena; smallint je mensi, takze sa zmensi velkost riadku a teda sa ich viac zmesti na stranku, takze sa zmensuje IO;
Čas Symbol 2016-05-24 17:15:59.030 A 2016-05-24 17:15:59.035 A 2016-05-24 17:15:59.123 ATo mohou být tři unikátní záznamy, mohou to být tři „duplicitní“ záznamy, nebo dva duplicitní záznamy a jeden unikátní. Záleží na tom, s jakou přesností čas rozlišujete. Když MP tvrdí, že ta kombinace musí být unikátní, chápu to tak, že to tak je z povahy okolního světa, že ta data prostě takto unikátně vznikají. Pak ale potřebuje vědět, jakou přesnost mají ta reálná data, a stejnou přesnost pak nastavit i v databázi. Také to ale může znamenat, že na vstupu mohou být duplicitní záznamy, a splnění podmínky „musí být unikátní“ se musí zařídit až při vkládání dat do databáze (třeba způsobem, že první nebo poslední vyhrává).
Zatial to nevidim ako "cestu do pekel", ale mozno na peknom pekelnom priklade by to bolo zjavnejsie.Když budete mít na vstupu údaje s přesností na desetinu sekundy, a sloupec bude s přesností na sekundy, můžete na vstupu získat duplicitní údaje. Do databáze je nezapíšete a o data přijdete. Když budete mít na vstupu data s přesností na sekundy a ukládat je budete s přesností na milisekundy, a budete potřebovat třeba 5 minut starý záznam, vezmete aktuální čas, odečtete od něj 5 minut a výsledný údaj budete hledat v databázi. A nenajdete nic, protože hledaná čas bude mít na místě milisekund nejspíš nějaké nenulové číslo, jenže v databázi budou samé nuly.
Když budete mít na vstupu data s přesností na sekundy a ukládat je budete s přesností na milisekundy, a budete potřebovat třeba 5 minut starý záznam, vezmete aktuální čas, odečtete od něj 5 minut a výsledný údaj budete hledat v databázi. A nenajdete nic, protože hledaná čas bude mít na místě milisekund nejspíš nějaké nenulové číslo, jenže v databázi budou samé nuly.
Nebo s tím budu počítat a vezmu poslední záznam před daným časem, poslední záznam po něm nebo interpolaci. Nebo ta tabulka může být jen mezistupněm pro generování kumulovaných dat. Nejde naslepo tvrdit, že něco je špatně, pokud nevíte, k čemu ta data slouží a jak se s nimi pracuje.
timestamp without time zone not null
a u toho komentář, že to musí být unikátní, rovnou se ptám, při jaké přesnosti to má být unikátní. Je možné, že to autor ví, ale pak je vhodné to doplnit i do té definice, čímž se těm otázkám předejde.
Tiskni Sdílej: