Google představil Gemini, svůj největší a nejschopnější model umělé inteligence.
openSUSE komunita vybírá nová loga. Jedním z cílů je odlišit se od SUSE. Aktuálně probíhá hlasování o logu openSUSE a čtyř distribucí Tumbleweed, Leap, Slowroll a Kalpa.
Raspberry Pi OS, oficiální operační systém pro Raspberry Pi, byl vydán v nové verzi 2023-12-05. Přehled novinek v příspěvku na blogu a poznámkách k vydání. Nově jej lze používat také s tmavým tématem.
Dnes je to 10 let, co byla vytvořena decentralizovaná kryptoměna Dogecoin. Autoři Billy Markus a Jackson Palmer ji původně zamýšleli jako vtip. Znakem kryptoměny je pes Shiba-Inu známý z internetových memů.
Google Chrome 120 byl prohlášen za stabilní. Nejnovější stabilní verze 120.0.6099.62 přináší řadu oprav a vylepšení (YouTube). Opraveno bylo 10 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře (YouTube).
Byla vydána nová verze 2023.4 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení. Vypíchnout lze podporu Cloud ARM64, Vagrant Hyper-V a Raspberry Pi 5.
Společnosti IBM, Meta a dalších vice než 50 zakládajících členů (bez Microsoftu a OpenAI) vytvořili mezinárodní alianci AI Alliance pro spolupráci na vývoji a rozvoji otevřené, bezpečné a odpovědné umělé inteligence.
Služba pro hlídání uniklých hesel Have I Been Pwned oslavila 10. výročí. Troy Hunt ji spustil 4. prosince 2013 (Twitter).
Programovací jazyk HTML.
Podpora TORu v Debianu 11 Bullseye a 10 Buster byla ukončena. Doporučuje se přechod na Debian 12 Bookworm.
SELECT days_of_stay AS days, accommodation_discounts.id AS id_discount, accommodation_discounts.id_room_discounted FROM accommodation_discounts LEFT JOIN accommodation_discounts_rules_longer_stay ON accommodation_discounts_rules_longer_stay.id_discount = accommodation_discounts.id WHERE accommodation_discounts.discount_type = 'longer_stay' AND accommodation_discounts.start_date < '2010-08-31' AND accommodation_discounts.end_date >= '2010-08-26' AND accommodation_discounts_rules_longer_stay.days_of_stay <= '6' AND id_room_discounted = 105; +------+-------------+--------------------+ | days | id_discount | id_room_discounted | +------+-------------+--------------------+ | 4 | 353 | 105 | | 5 | 354 | 105 | | 4 | 355 | 105 | +------+-------------+--------------------+To je pro nejaky dany pokoj a z tohoto ja potrebuju vybrat tu hodnotu, kde je nejvyssi days, tzn radek | 5 | 354 | 105 | Ovsem, kdyz pouziju MAX(days_of_stay), tak to selectne:
+------+-------------+--------------------+ | days | id_discount | id_room_discounted | +------+-------------+--------------------+ | 5 | 353 | 105 | +------+-------------+--------------------+A uz neresi zavislost s id_discount. Takze jak to vyresit, jeste podotknu, ze finalni dotaz se groupuje podle id_room_discounted, tedy musim s tim pocitat. Takze neco jako:
SELECT MAX(days_of_stay) AS days, accommodation_discounts.id AS id_discount, accommodation_discounts.id_room_discounted FROM accommodation_discounts LEFT JOIN accommodation_discounts_rules_longer_stay ON accommodation_discounts_rules_longer_stay.id_discount = accommodation_discounts.id WHERE accommodation_discounts.discount_type = 'longer_stay' AND accommodation_discounts.start_date < '2010-08-31' AND accommodation_discounts.end_date >= '2010-08-26' AND accommodation_discounts_rules_longer_stay.days_of_stay <= '6' GROUP BY id_room_discountedovsem tak, aby to vybiralo data k MAX hodnote. Nejake napady?
Řešení dotazu:
MAX()
) vrátí určitou hodnotu ze sady hodnot – ale pouze tu hodnotu, neomezí výsledek dotazu na řádek, kde se ta hodnota nachází. Pokud použijete agregační funkci v části SELECT
ve standardním SQL, můžete tedy v části SELECT použít jen agregační funkce a nebo sloupce uvedené v GROUP BY
. MySQL tohle „omezení“ nemá a dělá GROUP BY automaticky, pokud však nemají všechny sloupce ve skupně stejnou hodnotu, vybere do výsledku některou z hodnot náhodně.
Ve vašem případě tedy zřejmě musíte použít vnořený dotaz – vnořeným dotazem zjistit tu největší hodnotu, a vnějším dotazem si pak vytáhnout řádek, který tuhle největší hodotu obsahuje.
SELECT days, id_discount, id_room_discounted FROM ( SELECT days_of_stay AS days, accommodation_discounts.id AS id_discount, accommodation_discounts.id_room_discounted FROM accommodation_discounts LEFT JOIN accommodation_discounts_rules_longer_stay ON accommodation_discounts_rules_longer_stay.id_discount = accommodation_discounts.id WHERE accommodation_discounts.discount_type = 'longer_stay' AND accommodation_discounts.start_date < '2010-08-31' AND accommodation_discounts.end_date >= '2010-08-26' AND accommodation_discounts_rules_longer_stay.days_of_stay <= '6' AND id_room_discounted = 105 ORDER BY days DESC ) WHERE ROWNUM = 1;Jinak nenapsal jsi pro jakou db to resis, tohle je pro Oracle.. Pokud tam mas neco jinyho tak asi bude treba zmenit tu podminku dole na nejaky LIMIT..
id_room_discounted
.
Oracle to IMHO není, tam by se dalo řešit pomocí analytických funkcí. Pěkný úvod je například zde - http://www.dbsvet.cz/view.php?cisloclanku=2006071901
Tiskni
Sdílej: