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 04:11 | IT novinky

    Společnost PINE64 kvůli nedostatku a vysokým cenám DRAM a eMMC dočasně pozastavuje výrobu linuxových zařízení. Výroba zařízení jako PineTime, PineVoice a Pinecil pokračuje.

    Ladislav Hagara | Komentářů: 0
    dnes 02:55 | IT novinky

    Společnost Stripe se dohodla na akvizici společnosti OpenRouter. Za 7,5 miliardy dolarů.

    Ladislav Hagara | Komentářů: 0
    dnes 01:33 | Nová verze

    Byla vydána nová verze 1.27 programovacího jazyka Go (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 16:00 | Pozvánky

    V pátek 28. srpna se v Praze uskuteční již osmý Mobile Linux Hackday. Jako obvykle se potkáme v pražské pobočce SUSE v Karlíně na Křižíkově, takže kromě mobilního Linuxu je to tentokrát i příležitost přijít se podívat na nově zrekonstruované kanceláře. Začínáme v 10:00, ale dorazit můžete samozřejmě kdykoliv v průběhu dne. Setkáním vás provede David Heidelberg, vývojář GPU ovladačů v Mesa 3D a jeden z hlavních lidí české komunity kolem … více »

    lkocman | Komentářů: 0
    včera 14:11 | IT novinky

    Představen byl Raspberry Pi Compute Module 5 Programming Jig. Jedná se o zařízení umožňující připravit Compute Module 5 do plně funkčního stavu bez nutnosti použití dalších vstupně / výstupních desek. Podporuje automatizaci pomocí nástroje rpi-sb-provisioner. Podrobnosti v dokumentaci.

    Ladislav Hagara | Komentářů: 1
    včera 05:55 | IT novinky

    Hackeři ve Francii ukradli data více než půl milionu daňových poplatníků. Je to jeden z největších hackerských útoků v dějinách země. O útoku z konce června informovala až teď daňová správa. Teprve od pondělí dotčeným občanům zasílá e-maily s instrukcemi, jak postupovat dál. Hackeři se sice nedostanou k penězům dotyčných, hrozí ale věrohodné podvody. Hackeři získali třeba celá jména, údaje o rodinných příslušnících nebo také údaje o

    … více »
    Ladislav Hagara | Komentářů: 19
    včera 04:44 | IT novinky

    Společnost Framework představila nový Framework Laptop 12 s Intel Core Series 3, Thunderbolt 4, Wi-Fi 7, volitelnou čtečkou otisků prstů a podsvícenou klávesnicí s open-source firmwarem ZMK. Objednat lze s předinstalovanou Fedorou 44 KDE Plasma.

    Ladislav Hagara | Komentářů: 0
    18.8. 16:44 | Nová verze

    Byl vydán Mozilla Firefox 154.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 154 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    18.8. 14:33 | Nová verze

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 168 (pdf).

    Ladislav Hagara | Komentářů: 0
    18.8. 11:55 | Nová verze

    Open-source citační manažer Zotero (Wikipedie, GitHub) byl vydán v nové major verzi 10. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (19%)
     (30%)
     (7%)
     (6%)
     (2%)
     (15%)
     (22%)
    Celkem 2444 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    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: 605×
    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.