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í
×
    dnes 03:33 | Bezpečnostní upozornění

    V dokumentově orientované databázi MongoDB byla nalezena a v upstreamu již opravena kritická bezpečností chyba CVE-2025-14847 aneb MongoBleed.

    Ladislav Hagara | Komentářů: 1
    včera 23:11 | IT novinky

    Při úklidu na Utažské univerzitě se ve skladovacích prostorách náhodou podařilo nalézt magnetickou pásku s kopií Unixu V4. Páska byla zaslána do počítačového muzea, kde se z pásky úspěšně podařilo extrahovat data a Unix spustit. Je to patrně jediný známý dochovaný exemplář tohoto 52 let starého Unixu, prvního vůbec programovaného v jazyce C.

    🇨🇽 | Komentářů: 1
    včera 15:55 | Komunita

    FFmpeg nechal kvůli porušení autorských práv odstranit z GitHubu jeden z repozitářů patřících čínské technologické firmě Rockchip. Důvodem bylo porušení LGPL ze strany Rockchipu. Rockchip byl FFmpegem na porušování LGPL upozorněn již téměř před dvěma roky.

    🇨🇽 | Komentářů: 6
    včera 15:44 | Zajímavý software

    K dispozici je nový CLI nástroj witr sloužící k analýze běžících procesů. Název je zkratkou slov why-is-this-running, 'proč tohle běží'. Klade si za cíl v 'jediném, lidsky čitelném, výstupu vysvětlit odkud daný spuštěný proces pochází, jak byl spuštěn a jaký řetězec systémů je zodpovědný za to, že tento proces právě teď běží'. Witr je napsán v jazyce Go.

    🇨🇽 | Komentářů: 1
    včera 15:33 | Zajímavý software

    Yazi je správce souborů běžící v terminálu. Napsán je v programovacím jazyce Rust. Podporuje asynchronní I/O operace. Vydán byl v nové verzi 25.12.29. Instalovat jej lze také ze Snapcraftu.

    Ladislav Hagara | Komentářů: 1
    26.12. 18:44 | Komunita

    Od soboty do úterý probíhá v Hamburku konference 39C3 (Chaos Communication Congress) věnovaná také počítačové bezpečnosti nebo hardwaru. Program (jiná verze) slibuje řadu zajímavých přednášek. Streamy a záznamy budou k dispozici na media.ccc.de.

    Ladislav Hagara | Komentářů: 0
    26.12. 13:22 | Zajímavý software

    Byl představen nový Xserver Phoenix, kompletně od nuly vyvíjený v programovacím jazyce Zig. Projekt Phoenix si klade za cíl být moderní alternativou k X.Org serveru.

    🇨🇽 | Komentářů: 8
    26.12. 13:11 | Nová verze

    XLibre Xserver byl 21. prosince vydán ve verzi 25.1.0, 'winter solstice release'. Od založení tohoto forku X.Org serveru se jedná o vůbec první novou minor verzi (inkrementovalo se to druhé číslo v číselném kódu verze).

    🇨🇽 | Komentářů: 1
    26.12. 03:33 | Nová verze

    Wayback byl vydán ve verzi 0.3. Wayback je "tak akorát Waylandu, aby fungoval Xwayland". Jedná se o kompatibilní vrstvu umožňující běh plnohodnotných X11 desktopových prostředí s využitím komponent z Waylandu. Cílem je nakonec nahradit klasický server X.Org, a tím snížit zátěž údržby aplikací X11.

    Ladislav Hagara | Komentářů: 1
    25.12. 14:44 | Nová verze

    Byla vydána verze 4.0.0 programovacího jazyka Ruby (Wikipedie). S Ruby Box a ZJIT. Ruby lze vyzkoušet na webové stránce TryRuby. U příležitosti 30. narozenin, první veřejná verze Ruby 0.95 byla oznámena 21. prosince 1995, proběhl redesign webových stránek.

    Ladislav Hagara | Komentářů: 1
    Kdo vám letos nadělí dárek?
     (33%)
     (1%)
     (23%)
     (1%)
     (1%)
     (1%)
     (11%)
     (12%)
     (17%)
    Celkem 175 hlasů
     Komentářů: 18, poslední 24.12. 15:29
    Rozcestník

    Dotaz: MySQL názvy sloupců ve výsledku dotazu

    15.1.2015 11:30 Terka | skóre: 13
    MySQL názvy sloupců ve výsledku dotazu
    Přečteno: 442×
    zdrojová data:
    DATE	      HK      IN	MY
    2015-01-15    1028    1279	1569
    
    ráda bych dostala selectem všechny sloupce, které mají hodnotu větší než 1200, tj. IN, MY
    Je toto řešitelné?
    Díky!
    

    Řešení dotazu:


    Odpovědi

    15.1.2015 11:37 DarkKnight | skóre: 26
    Rozbalit Rozbalit vše Re: MySQL názvy sloupců ve výsledku dotazu
    Dotazy v sql jsou vzhledem k radkum, tj muzes ziskat radek, kde nektera z hodnot ma vetsi hodnotu nez 1200. Nasledne to muzes filtrovat v aplikaci (abys zjistila, o ktery sloupec jde), nebo muzes mit tri rozdilne query (jednu pro kazdy sloupec).
    15.1.2015 11:46 Terka | skóre: 13
    Rozbalit Rozbalit vše Re: MySQL názvy sloupců ve výsledku dotazu
    Díky za odpověď, bohužel mi moc nepomohla:
    Ráda bych to toťiž vyřešila na úrovni MySQL.
    A to dynamicky, aby query nezáviselo na názvech sloupců.
    Díky.
    Řešení 1× (Tarmaq)
    15.1.2015 11:52 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: MySQL názvy sloupců ve výsledku dotazu
    SELECT DATE, HK AS value FROM table WHERE value>1200
    UNION ALL
    SELECT DATE, `IN` AS value FROM table WHERE value>1200
    UNION ALL
    SELECT DATE, MY AS value FROM table WHERE value>1200
    
    Délka dotazu je daní za chybnou normalizaci databáze.

    Doporučuji psát názvy sloupců malými písmeny.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    15.1.2015 12:12 Terka | skóre: 13
    Rozbalit Rozbalit vše Re: MySQL názvy sloupců ve výsledku dotazu
    Ano, návrh je špatný. 
    Šlo by v mysql něco jako:
    
    for i in (select country from country) do
    select i AS value FROM table WHERE value>1200
    done
    
    Cílem je dostat jednotlivé země a dál je použít v dalším query.
    Tarmaq avatar 15.1.2015 12:21 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: MySQL názvy sloupců ve výsledku dotazu
    Neco podobneho by se dalo vyresit v procedure pomoci kurzoru, ale opravdu stejne jako Kit doporucuju normalizaci databaze. Jednim z benefitu by bylo zajisteni integrity dat.
    Don't panic!
    15.1.2015 13:42 Terka | skóre: 13
    Rozbalit Rozbalit vše Re: MySQL názvy sloupců ve výsledku dotazu
    A jak konkrétně by to šlo?
    Tarmaq avatar 15.1.2015 15:09 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: MySQL názvy sloupců ve výsledku dotazu
    bohuzel nemam zadnou mysql db po ruce, ale melo by to jit nejak takto:
    1. Prochazet kurzorem zaznamy v tabulce countries (viz dokumentace)
    2. V kazde iteraci si splacat SQL kde bude nazev vybraneho sloupce tvoren kodem iterovane zeme
    3. Takto vytvorene sql spustit a pokud bude hodnota vetsi nez 1200, pridat ho do docasne tabulky
    4. Na konci procedury vratit obsah docasne tabulky
    PS: co brani normalizaci databaze?
    Don't panic!
    15.1.2015 16:31 Terka | skóre: 13
    Rozbalit Rozbalit vše Re: MySQL názvy sloupců ve výsledku dotazu
    Tak mam reseni 
    select column_name
      from information_schema.columns 
     where table_schema ....
       and table_name = 
       and column_name !='DATE'
    
    
    >PS: co brani normalizaci databaze? 
    Aplikace co funguje a je pro me mnohem jednodussi upravit kousek nez predelavat vetsi kus.
    Kdyz bude cas tak treba jednou.
    
    Diky za pomoc, ty kurzory by me zajimaly jak by to query vypadalo..
    
    15.1.2015 16:38 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: MySQL názvy sloupců ve výsledku dotazu
    Klasická reflexe. Vypadá to dobře.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    15.1.2015 16:34 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: MySQL názvy sloupců ve výsledku dotazu
    Ono to jde i reflexí
    DESCRIBE table;
    a pak iterovat s vynecháním sloupce DATE. Ovšem je to hnus.

    Normalizaci brání zřejmě fakt, že tu tabulku dělal někdo jiný a Terka z toho jen potřebuje vyzobat data. Už jsem před podobnou záležitost byl postaven a pokud do toho systému jiný proces sype data, tak zákazníka ke změně struktury donutíš jen stěží.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    19.1.2015 11:53 Štefan
    Rozbalit Rozbalit vše Re: MySQL názvy sloupců ve výsledku dotazu
    .. teda nevím jak tomu zadání rozuměli ostatní tady, ale já bych to viděl takto:

    select * from TABULKA where IN>1200 or MY>1200;

    "*" lze zaměnit za výčet potřebných sloupců

    "TABULKA" zaměnit za váš název tabulky

    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.