Byla vydána verze R14.1.2 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.
Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).
Apple představil (keynote) iPad Pro s čipem Apple M4, předělaný iPad Air ve dvou velikostech a nový Apple Pencil Pro.
Richard Biener oznámil vydání verze 14.1 (14.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 14. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.
Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2023. Vybráni byli Bruno Haible za dlouhodobé příspěvky a správu knihovny Gnulib, nováček Nick Logozzo za front-end Parabolic pro yt-dlp a tým Mission logiciels libres francouzského státu za nasazování svobodného softwaru do praxe.
Před 10 lety Microsoft dokončil akvizici divize mobilních telefonů společnosti Nokia a pod značkou Microsoft Mobile ji zanedlouho pohřbil.
Fedora 40 release party v Praze proběhne v pátek 17. května od 18:30 v prostorách společnosti Etnetera Core na adrese Jankovcova 1037/49, Praha 7. Součástí bude program kratších přednášek o novinkách ve Fedoře.
Stack Overflow se dohodl s OpenAI o zpřístupnění obsahu Stack Overflow pro vylepšení OpenAI AI modelů.
AlmaLinux byl vydán v nové stabilní verzi 9.4 (Mastodon, 𝕏). S kódovým názvem Seafoam Ocelot. Přehled novinek v příspěvku na blogu a v poznámkách k vydání.
Před 50 lety, 5. května 1974 v žurnálu IEEE Transactions on Communications, Vint Cerf a Bob Kahn popsali protokol TCP (pdf).
Ako sa to na pozadi riesi?Riadky maju jeden extra slpec id, ktore je indexovany. A operacie sa vykonavaju cez ten index.
Ked budem selektovat 50 tisic riadkov, tak tej DB bude trvat dlho, kym ich nacita a posle do aplikacie.Zalezi, ake dotazy napises. Je rozdiel volat po kazdom riadku alebo naraz 50k riadov od DB.
Co ak chcem na zaciatku skocit na koniec tabulky?None problem:
; 500 riadkov od konca SELECT name from user ORDER BY user_id DESC LIMIT 500
Mozem pouzit cursor a volne behat s "kurzorok" po db a citat len riadky, ktore chcem, ale stale musim vediet, kolko ma tabulka riadkov a navyse ten kurzor musim dat do tranzakcie.Mozes behat po DB a nepoznat rozmery. Behas cez id (ktore je casto autoincrement pri pridany noveho zaznamu, t.j. je jedinecne pre kazdy riadok).
;Prvych desat zaznamov od offsetu s id=53. SELECT id, name from user where user_id >= 53 LIMIT 10
Dalej, ak dam v gride nieco vyhladat, hladam to zas cez dalsi selekt alebo hladam v pameti z nacitanych dat?To by mala spravne riesit DB. DB Ti len serviruje, co chces. Ono je optimalizovana nejako na "big data".
Teroeticky viem ten pocet zrusit a grid bude mat neznamy pocet riadkov, …Ak su operacie, ked sa nema menit tabulka, tak vies ju uzamnut (napr. zakazat pridavat novy riadky), kym sa nevykona nejaky Tvoj prikaz. A potom ju opat odomknes.
Co ale ked chcem vyhladat v niektorom poli nejaku hodnotu v tom gride? Bud nacitam vsetky riadky a pohladam sam, alebo zistim selektom id riadku, poslem dalsi selekt na id > to_id a limit 10 a este jeden id < to_id limit 10 aby som ziskal 10 riadkov nad a 10 pod tym najdenym (preto aby som vedel zobrazit najdeny riadok v strede gridu).Postup dobry. Realizacia kus nie najlepsia. Da sa to zapisat v jednom prikaze:
SELECT full_name, born_year FROM users WHERE user_id in ( SELECT user_id WHERE user_id < 91 and obec = "Presov" LIMIT 9 ) OR user_id in ( SELECT user_id WHERE user_id >= 91 and obec = "Presov" LIMIT 10 )
Poznámka pro nakopnutí 1: "Mozem dat v DB offset a skocit na koniec" - no, můžeš. Ale co je to vlastně konec? Vyfiltrovaný seznam z původních 500000řádků, omezených filtrem na 100000, seřazených podle názvu sestupně - má konec jinde.Presne. Tabuľka v SQL nemá nejaké definované poradie. Prakticky je to množina riadkov. Ak sa bavím o rýchlosti, tak v prvom kole by som sa pozrel na to, koľko dát s má preniesť a aká je prenosová rýchlosť. Povedal by som, že DB dodá dáta tak rýchlo, ako to disk a sieť dovolí. Rozdiel začne byť až pri komplikovanejších query, ale podľa toho čo tu bolo napísané tak query je niečo ako "select * from tabulka". Žiadne "join", žiadne "where". Ak je to pomalé, tak DB na vine nie je.
LIMIT
a OFFSET
nebo něco podobného (PostgreSQL umí LIMIT a OFFSET). Pokud chcete záznamy číst postupně, používají se k tomu kurzory – ale není to nejběžnější způsob použití SQL databáze.
Počet záznamů v DB / 50 = počet stránek (zaohrouhlit na celé nahoru)
A tím pádem můžeš SELECTovat stylem:
SELECT * FROM tabulka ORDER BY klíč LIMIT 0,49
kdy LIMIT = (současná stránka * 50) - 1, (současná stránka * 50 + 50) - 1.
Tiskni Sdílej: