Rodina hardwaru služby Steam se začátkem roku 2026 rozroste. Steam Deck doplní nový Steam Controller, herní PC Steam Machine se SteamOS s KDE Plasmou a bezdrátový VR headset s vlastními ovladači Steam Frame.
Amazon Web Services (AWS) oznámil (en) výstavbu Fastnetu – strategického transatlantického optického kabelu, který propojí americký stát Maryland s irským hrabstvím Cork a zajistí rychlý a spolehlivý přenos cloudových služeb a AI přes Atlantik. Fastnet je odpovědí na rostoucí poptávku po rychlém a spolehlivém přenosu dat mezi kontinenty. Systém byl navržen s ohledem na rostoucí provoz související s rozvojem umělé inteligence a
… více »Evropská komise zkoumá možnosti, jak přinutit členské státy Evropské unie, aby ze svých telekomunikačních sítí postupně vyloučily čínské dodavatele Huawei a ZTE. Místopředsedkyně EK Henna Virkkunenová chce změnit doporučení nepoužívat rizikové dodavatele při budování mobilních sítí z roku 2020 v právně závazný požadavek.
sudo-rs, tj. sudo a su přepsané do programovacího jazyka Rust, již obsaženo v Ubuntu 25.10, bylo vydáno ve verzi 0.2.10. Opraveny jsou 2 bezpečnostní chyby.
Kaspersky pro Linux je nově k dispozici také pro domácí uživatele.
Společnost Avalonia UI oznámila, že pracuje na .NET MAUI pro Linux a webový prohlížeč. Vyzkoušet lze demo v prohlížeči. Když bude backend stabilní, bude vydán jako open source pod licencí MIT.
Byl vydán Mozilla Firefox 145.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Ukončena byla podpora 32bitového Firefoxu pro Linux. Přidána byla podpora Matrosky. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 145 bude brzy k dispozici také na Flathubu a Snapcraftu.
Lidé.cz (Wikipedie) jsou zpět jako sociální síť s "ambicí stát se místem pro kultivované debaty a bezpečným online prostředím".
Byla vydána nová verze 4.4 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Využíván je Free Pascal Compiler (FPC) 3.2.2.
ASUS má v nabídce komplexní řešení pro vývoj a nasazení AI: kompaktní stolní AI superpočítač ASUS Ascent GX10 poháněný superčipem NVIDIA GB10 Grace Blackwell a platformou NVIDIA DGX Spark. S operačním systémem NVIDIA DGX založeném na Ubuntu.
insert into hodnoty (id,hodnota,datum_od,datum_do) values (1,3.300,'2018-01-01','2019-12-31'), (1,3.600,'2020-01-01','2020-11-31'), (1,3.850,'2021-01-01','2021-12-31'), (1,4.000,'2022-01-01','2022-12-31'), (1,4.350,'2023-01-01','2023-12-31'), (1,4.700,'2024-01-01','3333-03-03'), (2,3.300,'2018-01-01','2019-12-31'), (2,3.600,'2020-01-01','2020-12-31'), (2,3.850,'2021-01-01','2021-12-31'), (2,4.000,'2022-01-01','2022-12-31'); (2,4.350,'2023-01-01','2023-12-31'), (2,4.700,'2024-01-01','3333-03-03'), (3,2.848,'2018-01-01','2018-08-31'), (3,2.943,'2018-09-01','2018-12-31'), (3,3.188,'2019-01-01','2019-12-31'), (3,3.555,'2020-01-01','2020-12-31'), (3,3.819,'2020-12-01','2021-12-31'), (3,3.961,'2022-01-01','2022-12-31'), (3,4.291,'2023-01-01','2023-12-31'), (3,4.597,'2024-01-01','3333-03-03');su v nej id ktore maju urcitu casovu platnost. je mozne priamo v sql zistit, ci sa pre jednotlive id datumove intervaly neprekryvaju(t.j. ci id nema v dany datum viacero moznych hodnot) a zaroven ci nie su v intervaloch medzery(t.z. ci neexistuje datum pre ktory id nema ziadnu hodnotu)? v priklade ako najmensi mozny datum je 2018-01-01 a najvyssi 3333-03-03. pre id=1 napr. chybaju hodnoty pre december 2020. pre id=3 su zase pre interval datumov december 2020 platne 2 hodnoty(3.555 aj 3.819 co je nespravne). je mozne tieto chyby v integrite dat nejako lahko vyselektovat? dakujem.
select * from hodnoty h1 join hodnoty h2 on daterange(h1.datum_od, h1.datum_do, '[]') && daterange(h2.datum_od, h2.datum_do, '[]') and h1.id < h2.id;A jestli něco nechybí můžeš zjistit tak, že porovnáš součty délek intervalů s intervalem (nejmenší datum, největší). V mariadb možná bude potřeba napsat vlastní podmínky na porovnání intervalů, nevím, jestli je tam na to funkce.
with t1 as(
select
id,
datediff(max(datum_do), min(datum_od)) + 1 as celkovy_pocet_dni
from
hodnoty
group by
id
),
t2 as(
select
id,
sum(datediff(datum_do, datum_od) + 1) as sucet_intervalov
from
hodnoty
group by
id
),
t3 as (
select
t1.id as id,
celkovy_pocet_dni - sucet_intervalov as rozdiel
from
t1
left join t2 on t2.id = t1.id
having
rozdiel != 0
)
select
id,
case
when rozdiel < 0 then 'duplicita datumov'
when rozdiel > 0 then 'chybajuci interval datumov'
end as chyba
from
t3
order by
t3.id
(1,1.000,'2018-01-01','2018-12-31'), (1,1.000,'2018-01-01','2018-12-31'), (1,1.000,'2020-01-01','2020-12-31')
-- kontrola ci datum_do nie je mensi ako datum_od
select
*,
datediff(h.datum_do, h.datum_od) as pocet_dni
from
hodnoty as h
having
pocet_dni < 0
order by
h.id,
h.datum_od,
h.datum_do;
-- kontrola ci intervaly datumov na seba plynulo nadvazuju
with t1 as (
select
h.id,
lag(h.datum_do, 1) over (
PARTITION BY h.id
order by
h.id,
h.datum_od,
h.datum_do
) as datum_pred,
h.datum_od,
h.datum_do,
lead(h.datum_od, 1) over (
PARTITION BY h.id
order by
h.id,
h.datum_od,
h.datum_do
) as datum_po
from
hodnoty as h
order by
h.id,
h.datum_od,
h.datum_do
)
select
id,
datum_pred,
case
when datediff(datum_od, datum_pred) is NULL then 'OK'
when datediff(datum_od, datum_pred) = 1 then 'OK'
else 'CHYBA'
end as stav_1,
datum_od,
datum_do,
case
when datediff(datum_po, datum_do) is NULL then 'OK'
when datediff(datum_po, datum_do) = 1 then 'OK'
else 'CHYBA'
end as stav_2,
datum_po
from
t1
having
stav_1 = 'CHYBA'
or stav_2 = 'CHYBA'
skusil som to vyriesit pomocou LAG a LEAD.
rozdelil som to do dvoch krokov.
najskor sa skontroluje ci su v poriadku jednotlive datumove intervaly.
a v druhom kroku sa skontroluje ci intervaly pre jednotlive id na seba nadvazuju a neprekryvaju sa. vie mi to niekto skontrolovat ci tam zase nie je nejaka chyba? nejaky pripad pri ktorom by kontrola zlyhala?
select
A.*
,B.*
from hodnoty A
join hodnoty B on A.id = b.id and A.datum_do >= B.datum_od and A.datum_od <= B.datum_do
řešení vychází z následujícího obrázku, který ukazuje možné překryvy
A
+----------------+
o x
o x o x o x
+-----+ +----+ +-----+
B B B
Díry v jistém smyslu jsou problematičtější, protože vždycky budete mít díru. A to na začátku a na konci.
select
A.*
,min(B.datum_od)
from hodnoty A
join hodnoty B on A.id = B.id and A.datum_do < B.datum_od
group by A.*
having A.datum_do + interval '1' day < min(B.datum_od)
Rychlejší řešení děr je pomocí analytických funkcí. Konkrétně funkce LAG a LEAD
SELECT id, hodnota, datum_od, datum_do
FROM (
SELECT id, hodnota, datum_od, datum_do,
LEAD(datum_od) OVER (PARTITION BY id ORDER BY datum_od) AS next_datum_od
FROM hodnoty
) AS t
WHERE datum_do >= next_datum_od;
SELECT id, hodnota, datum_od, datum_do
FROM (
SELECT id, hodnota, datum_od, datum_do,
LAG(datum_do) OVER (PARTITION BY id ORDER BY datum_od) AS prev_datum_do
FROM hodnoty
) AS t
WHERE datum_od > DATE_ADD(prev_datum_do, INTERVAL 1 DAY);
Tiskni
Sdílej: