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 17:44 | Zajímavý článek

    Jak si zobrazit pomocí Chrome a na Chromiu založených webových prohlížečích stránky s neplatným certifikátem? Stačí napsat thisisunsafe.

    Ladislav Hagara | Komentářů: 3
    včera 00:33 | Bezpečnostní upozornění

    V repozitáři AUR (Arch User Repository) linuxové distribuce Arch Linux byly nalezeny a odstraněny tři balíčky s malwarem. Jedná se o librewolf-fix-bin, firefox-patch-bin a zen-browser-patched-bin.

    Ladislav Hagara | Komentářů: 10
    včera 00:22 | Komunita

    Dle plánu by Debian 13 s kódovým názvem Trixie měl vyjít v sobotu 9. srpna.

    Ladislav Hagara | Komentářů: 0
    19.7. 13:22 | Komunita

    Vývoj linuxové distribuce Clear Linux (Wikipedie) vyvíjené společností Intel a optimalizováné pro jejich procesory byl oficiálně ukončen.

    Ladislav Hagara | Komentářů: 1
    18.7. 14:00 | Zajímavý článek

    Byl publikován aktuální přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie).

    Ladislav Hagara | Komentářů: 0
    18.7. 12:00 | Nová verze

    V programovacím jazyce Go naprogramovaná webová aplikace pro spolupráci na zdrojových kódech pomocí gitu Forgejo byla vydána ve verzi 12.0 (Mastodon). Forgejo je fork Gitei.

    Ladislav Hagara | Komentářů: 1
    17.7. 18:44 | Zajímavý článek

    Nová čísla časopisů od nakladatelství Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 155 (pdf) a Hello World 27 (pdf).

    Ladislav Hagara | Komentářů: 1
    17.7. 16:11 | Nová verze

    Hyprland, tj. kompozitor pro Wayland zaměřený na dláždění okny a zároveň grafické efekty, byl vydán ve verzi 0.50.0. Podrobný přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 4
    17.7. 15:55 | Komunita

    Patrick Volkerding oznámil před dvaatřiceti lety vydání Slackware Linuxu 1.00. Slackware Linux byl tenkrát k dispozici na 3,5 palcových disketách. Základní systém byl na 13 disketách. Kdo chtěl grafiku, potřeboval dalších 11 disket. Slackware Linux 1.00 byl postaven na Linuxu .99pl11 Alpha, libc 4.4.1, g++ 2.4.5 a XFree86 1.3.

    Ladislav Hagara | Komentářů: 6
    16.7. 21:22 | IT novinky

    Ministerstvo pro místní rozvoj (MMR) jako první orgán státní správy v Česku spustilo takzvaný „bug bounty“ program pro odhalování bezpečnostních rizik a zranitelných míst ve svých informačních systémech. Za nalezení kritické zranitelnosti nabízí veřejnosti odměnu 1000 eur, v případě vysoké závažnosti je to 500 eur. Program se inspiruje přístupy běžnými v komerčním sektoru nebo ve veřejné sféře v zahraničí.

    Ladislav Hagara | Komentářů: 19
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (26%)
     (19%)
     (5%)
     (7%)
     (2%)
     (5%)
     (5%)
     (31%)
    Celkem 42 hlasů
     Komentářů: 6, poslední dnes 09:19
    Rozcestník

    Dotaz: Zjednoduseni dotazu

    28.3.2014 14:15 dobraczek | skóre: 6
    Zjednoduseni dotazu
    Přečteno: 557×
    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.