abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

    včera 19:33 | Nová verze

    Bylo vydáno Ubuntu 20.04.6 LTS, tj. šesté opravné vydání Ubuntu 20.04 LTS s kódovým názvem Focal Fossa. Přehled novinek v poznámkách k vydání a v přehledu změn.

    Ladislav Hagara | Komentářů: 0
    včera 14:44 | IT novinky

    Připojit neznámý USB flash disk do počítače může být nebezpečné. Dokonce může jít i o život. Někdo rozeslal ekvádorským novinářům USB flash disky, které po připojení do počítače explodují [BBC, Twitter].

    Ladislav Hagara | Komentářů: 2
    včera 13:33 | Nová verze

    Byla vydána nová verze 7.4 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.

    Ladislav Hagara | Komentářů: 0
    22.3. 21:55 | Nová verze

    Byla vydána verze 11.0 s kódovým jménem Aramo linuxové distribuce Trisquel GNU/Linux. Založena je na Ubuntu 22.04 LTS a podporována bude do roku 2027. Trisquel patří mezi svobodné distribuce doporučované Nadací pro svobodný software (FSF).

    Ladislav Hagara | Komentářů: 0
    22.3. 16:55 | IT novinky

    Mozilla založila startup Mozilla.ai a vložila do něj 30 milionů dolarů. Cílem je vývoj důvěryhodné, nezávislé a open source AI.

    Ladislav Hagara | Komentářů: 2
    22.3. 16:33 | Nová verze

    Po půl roce vývoje od vydání verze 43 bylo vydáno GNOME 44 s kódovým názvem Kuala Lumpur. Přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře. Krátké představení na YouTube.

    Ladislav Hagara | Komentářů: 27
    22.3. 13:33 | IT novinky

    Letošní Turingovou cenu (2022 ACM A.M. Turing Award) získal Bob Metcalfe za vynalezení, standardizaci a komercializaci Ethernetu.

    Ladislav Hagara | Komentářů: 0
    22.3. 07:00 | Nová verze

    Svobodná webová platforma pro sdílení a přehrávání videí PeerTube (Wikipedie) byla vydána ve verzi 5.1. Přehled novinek i s náhledy v oficiálním oznámení a na GitHubu.

    Ladislav Hagara | Komentářů: 0
    21.3. 18:22 | Nová verze

    Byla vydána Java 20 / JDK 20. Nových vlastností (JEP - JDK Enhancement Proposal) je 7. Nová Java / JDK vychází každých 6 měsíců. LTS verze je 17.

    Ladislav Hagara | Komentářů: 7
    21.3. 16:44 | IT novinky

    Google spustil konverzační AI Bard. Vyzkoušet lze zatím pouze ve Spojených státech a Spojeném království. Více v Bard FAQ.

    Ladislav Hagara | Komentářů: 2
    Používáte WSL (Windows Subsystem for Linux)?
     (74%)
     (12%)
     (4%)
     (10%)
    Celkem 302 hlasů
     Komentářů: 4, poslední dnes 06:42
    Rozcestník


    Dotaz: Zjednoduseni dotazu

    28.3.2014 14:15 dobraczek | skóre: 6
    Zjednoduseni dotazu
    Přečteno: 533×
    Příloha:
    Prosim o radu, jak lze zjednodusit tento dotaz. Bezne bych to resil PHP, ale zajima me zda-li to vyresit i MySQL.

    Nahled dotazu v priloze, nebo zde:
    SELECT
    	id,
    	DATE(datum) as `mydate`,
    	(SELECT `stupnu` FROM `_teplota` b WHERE `b`.`datum` LIKE CONCAT('%', DATE(`b`.`datum`) ,' 00:%') ORDER BY `stupnu` LIMIT 1) as `h0`,
    	(SELECT `stupnu` FROM `_teplota` b WHERE `b`.`datum` LIKE CONCAT('%', DATE(`a`.`datum`) ,' 02:%') ORDER BY `stupnu` LIMIT 1) as `h1`,
    	(SELECT `stupnu` FROM `_teplota` b WHERE `b`.`datum` LIKE CONCAT('%', DATE(`a`.`datum`) ,' 04:%') ORDER BY `stupnu` LIMIT 1) as `h2`,
    	(SELECT `stupnu` FROM `_teplota` b WHERE `b`.`datum` LIKE CONCAT('%', DATE(`a`.`datum`) ,' 06:%') ORDER BY `stupnu` LIMIT 1) as `h3`,
    	(SELECT `stupnu` FROM `_teplota` b WHERE `b`.`datum` LIKE CONCAT('%', DATE(`a`.`datum`) ,' 08:%') ORDER BY `stupnu` LIMIT 1) as `h4`,
    	(SELECT `stupnu` FROM `_teplota` b WHERE `b`.`datum` LIKE CONCAT('%', DATE(`a`.`datum`) ,' 10:%') ORDER BY `stupnu` LIMIT 1) as `h5`,
    	(SELECT `stupnu` FROM `_teplota` b WHERE `b`.`datum` LIKE CONCAT('%', DATE(`a`.`datum`) ,' 12:%') ORDER BY `stupnu` LIMIT 1) as `h6`,
    	(SELECT `stupnu` FROM `_teplota` b WHERE `b`.`datum` LIKE CONCAT('%', DATE(`a`.`datum`) ,' 14:%') ORDER BY `stupnu` LIMIT 1) as `h7`,
    	(SELECT `stupnu` FROM `_teplota` b WHERE `b`.`datum` LIKE CONCAT('%', DATE(`a`.`datum`) ,' 16:%') ORDER BY `stupnu` LIMIT 1) as `h6`,
    	(SELECT `stupnu` FROM `_teplota` b WHERE `b`.`datum` LIKE CONCAT('%', DATE(`a`.`datum`) ,' 18:%') ORDER BY `stupnu` LIMIT 1) as `h7`,
    	(SELECT `stupnu` FROM `_teplota` b WHERE `b`.`datum` LIKE CONCAT('%', DATE(`a`.`datum`) ,' 20:%') ORDER BY `stupnu` LIMIT 1) as `h8`,
    	(SELECT `stupnu` FROM `_teplota` b WHERE `b`.`datum` LIKE CONCAT('%', DATE(`a`.`datum`) ,' 22:%') ORDER BY `stupnu` LIMIT 1) as `h9`
    FROM
    	`_teplota` a
    GROUP BY
    	`mydate` DESC
    LIMIT 10
    
    Dekuji.

    Odpovědi

    28.3.2014 14:49 deadmail
    Rozbalit Rozbalit vše Re: Zjednoduseni dotazu
    zeby nieco taketo?
    SELECT 
      id, 
      DATE(datum) AS mydate, 
      MIN(IF(HOUR(datum) DIV 2 = 0, stupnu, NULL)) AS h0, 
      MIN(IF(HOUR(datum) DIV 2 = 1, stupnu, NULL)) AS h1,
      MIN(IF(HOUR(datum) DIV 2 = 2, stupnu, NULL)) AS h2
    FROM
      _teplota
    GROUP BY
      mydate
    
    28.3.2014 15:22 dobraczek | skóre: 6
    Rozbalit Rozbalit vše Re: Zjednoduseni dotazu
    Bohuzel, toto nefunguje. Vysledky mi to sice vyhodi, ale nejsou spravne. V priloze je ukazka. Vyhodi to teplotu jaka je v jednu hodinu, nikoliv o pulnoci.

    Tabulka obsahuje sloupce: id, datum(DATETIME), stupnu(DOUBLE) a chtel jsem vypsat tabulku kde bude den a stupne za kazde 2 hodiny.

    Priklad tabulky do ktere davam dotaz:
    |  1 | 2014-03-28 11:00:00 | 0.00 |
    |  2 | 2014-03-28 12:00:00 | -0.50 |
    |  3 | 2014-03-28 13:00:00 | -0.40 |
    |  4 | 2014-03-28 14:00:00 | -0.40 |
    |  5 | 2014-03-28 16:00:00 | -0.40 |
    
    Muj dotaz sice funguje, ale je silene pomaly. Pravdepodobne za to muze propojeni tech dvou dotazu.
    28.3.2014 15:31 dobraczek | skóre: 6
    Rozbalit Rozbalit vše Re: Zjednoduseni dotazu
    Tak uz jsem to vyresil. Dekuji za tip....
    28.3.2014 15:15 axel
    Rozbalit Rozbalit vše Re: Zjednoduseni dotazu
    Doporucuju ptat se ve stylu "chci udelat toto" a maximalne prilozit select s tim, ze "ted to mam takhle a zda se mi to slozite". Rada lidi vcetne mne dotaz zkoumat nebude.
    28.3.2014 15:36 logik
    Rozbalit Rozbalit vše Re: Zjednoduseni dotazu
    Zhruba nástřel: v tomto případě je IMHO blbina načítat to do deseti sloupců vedle, ale načet bych si to postupně.

    SELECT
     max(stupnu),
     DATE(datum),
     HOUR(datum),
    FROM
     (SELECT
      stupnu,
      DATE(datum) + interval mod(hour(datum,2)) zaokrouhli_datum
     FROM) data
    GROUP BY datum
    ORDER BY datum
    

    "Pivot tables" (kontigngenční tabulky) pro datábázi moc práce nejsou. Pokud bys to chtěl udělat fakt v databázi, tak asi takhle:

    SELECT
     max(if(hodina = 0, stupnu, NULL) as h0,
     max(if(hodina = 2, stupnu, NULL) as h2,
     ...
     max(if(hodina = 22, stupnu, NULL) as h22,
     DATE(datum),
     HOUR(datum),
    FROM
     (SELECT
      DATE(datum) as datum,
      HOUR(datum) as hodina,
      stupnu  
     FROM tabulka) data
    GROUP BY datum
    ORDER BY datum
    

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.