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 16:55 | Nová verze

Byla vydána verze 1.0 klienta F-Droid určeného pro instalaci aplikací do Androidu ze softwarového repozitáře F-Droid (Wikipedie), alternativy k Google Play, nabízející pouze svobodný a otevřený software. Podrobnosti v přehledu změn [Hacker News].

Ladislav Hagara | Komentářů: 5
včera 00:55 | Nová verze

Po téměř 13 měsících vývoje od verze 0.11.0 byla vydána verze 0.12.0 hardwarově nenáročného desktopového prostředí LXQt (Lightweight Qt Desktop Environment, Wikipedie) vzniklého sloučením projektů Razor-qt a LXDE. Přehled novinek v příspěvku na blogu.

Ladislav Hagara | Komentářů: 9
21.10. 12:33 | Zajímavý software

Článek ne Medium představuje nejnovější stabilní verzi 2.0 svobodné decentralizované mikroblogovací platformy a sociální sítě podobné Twitteru Mastodon (Wikipedie). Detailní přehled novinek na GitHubu [Hacker News].

Ladislav Hagara | Komentářů: 0
21.10. 06:00 | Komunita

V Praze na půdě Elektrotechnické fakulty ČVUT dnes probíhá RT-Summit 2017 – setkání vývojářů linuxového jádra a uživatelů jeho real-time verze označované jako preempt-rt. Přednášky lze sledovat online na YouTube.

Ladislav Hagara | Komentářů: 0
20.10. 14:33 | Zajímavý projekt

Blender Animation Studio zveřejnilo první epizodu z připravovaného animovaného seriálu The Daily Dweebs o domácím mazlíčkovi jménem Dixey. Ke zhlédnutí také ve 3D s rozlišením 8K.

Ladislav Hagara | Komentářů: 0
20.10. 12:34 | Komunita

Aktualizovanou počítačovou hru Warhammer 40,000: Dawn of War III v ceně 39,99 eur běžící také na Linuxu lze o víkendu na Steamu hrát zdarma a případně ještě v pondělí koupit s 50% slevou. Do soboty 19:00 lze na Humble Bundle získat zdarma Steam klíč k počítačové hře Sid Meier's Civilization® III v ceně 4,99 eur běžící také ve Wine.

Ladislav Hagara | Komentářů: 0
20.10. 00:22 | Nasazení Linuxu

Společnost Samsung oznámila, že skrze dokovací stanici DeX a aplikaci Linux on Galaxy bude možno na Samsung Galaxy S8 a S8+ a Galaxy Note 8 provozovat Linux. Distribuce nebyly blíže upřesněny.

Phantom Alien | Komentářů: 19
19.10. 23:55 | Komunita

Společnost Purism na svém blogu oznámila, že její notebooky Librem jsou nově dodávány se zrušeným (neutralized and disabled) Intel Management Engine (ME). Aktualizací corebootu na již prodaných noteboocích lze Management Engine také zrušit. Více v podrobném článku.

Ladislav Hagara | Komentářů: 2
19.10. 21:44 | Nová verze

Organizace Apache Software Foundation (ASF) na svém blogu slaví páté výročí kancelářského balíku Apache OpenOffice jako jejího Top-Level projektu. Při této příležitosti byl vydán Apache OpenOffice 4.1.4 (AOO 4.1.4). Podrobnosti v poznámkách k vydání. Dlouhé čekání na novou verzi tak skončilo.

Ladislav Hagara | Komentářů: 8
19.10. 19:22 | Pozvánky

Již příští týden - 26. a 27. října se v Praze v hotelu Olšanka odehraje OpenWRT Summit. Na webu konference naleznete program a možnost zakoupení lístků - ty stojí 55 dolarů. Čtvrtek bude přednáškový a v pátek se budou odehrávat převážně workshopy a meetingy.

Miška | Komentářů: 1
Jak se vás potenciálně dotkne trend odstraňování analogového audio konektoru typu 3,5mm jack z „chytrých telefonů“?
 (9%)
 (0%)
 (0%)
 (1%)
 (76%)
 (13%)
Celkem 205 hlasů
 Komentářů: 8, poslední včera 23:02
    Rozcestník

    Dotaz: MySQL - podmínka pro sloupec

    17.9.2012 11:23 filbar | skóre: 36 | blog: Denicek_programatora | Ostrava
    MySQL - podmínka pro sloupec
    Přečteno: 375×
    V MySQL mám takovou tabulku -
    +----+------------+----------+----------+
    | id | product_id | group_id | price    |
    +----+------------+----------+----------+
    | 61 |          3 |        0 |   100.00 |
    | 62 |          3 |        2 |   100.00 |
    |  6 |          4 |        0 | 10000.00 |
    +----+------------+----------+----------+
    
    
    A jde mi zde o sloupec group_id. Potřeboval bych z této tabulky dostat takové řádky, že pokud bude obsahovat pro jeden product_id jak řádek s group_id=0, tak i s group_id=2, tak aby mi to vrátilo řádek s group_id=2, ale pokud pro daný product_id bude jenom group_id=0, tak aby mi to vrátilo řádek s group_id=0. Zkoušel jsem už různé možnosti, ale nějak se mi nedaří přijít na to jak definovat WHERE podmínku.

    Předem děkuji za rady.

    Odpovědi

    17.9.2012 12:43 darkenik
    Rozbalit Rozbalit vše Re: MySQL - podmínka pro sloupec
    nieco take by mohlo fungovat select * from tabulka where (group_id > 0) OR ( group_id=0 AND NOT group_id > 0);
    17.9.2012 12:56 filbar | skóre: 36 | blog: Denicek_programatora | Ostrava
    Rozbalit Rozbalit vše Re: MySQL - podmínka pro sloupec
    To bylo to první co jsem zkoušel
    SELECT id, product_id, group_id, price FROM tabulka WHERE group_id=2 OR (group_id=0 AND NOT group_id=2)
    
    a toto mi to vyplivne:
    +----+------------+----------+--------+
    | id | product_id | group_id | price  |
    +----+------------+----------+--------+
    | 61 |          3 |        0 | 100.00 |
    | 62 |          3 |        2 | 100.00 |
    +----+------------+----------+--------+
    
    17.9.2012 13:30 kuka
    Rozbalit Rozbalit vše Re: MySQL - podmínka pro sloupec
    (group_id=0 AND NOT group_id=2) ma delat co? Cele je to z principu nesmysl, protoze podminka se aplikuje na jeden radek tabulky, tzn. nemuze jakkoliv osetrit existenci jineho radku s nejakymi vlastnostmi. SQL na toto nema moc hezke prostredky, trivialne lze napr. (napsal jsem to presne jak je tve zadani, ktere se mi ale zda hodne divne...)

    -- existuje pouze radek s group_id = 0
    select * from tabulka t
    where group_id = 0
      and not exists ( select 0 from tabulka
                         where product_id = t.product_id
                           and group_id != 0 )
    union all
    -- existuje group_id = 2 i group_id = 0 a chci dvojku
    select * from tabulka t
    where group_id = 2
      and exists ( select 0 from tabulka
                     where product_id = t.product_id
                       and group_id = 0 )
    

    nebo by sel pouzit outer join sam na sebe. Jsou i dalsi reseni, zalezi na tom co presne potrebujes, jestli te trapi vykon apod. Nejefektivnejsi casto byva spojeni s proceduralnim zpracovanim, pokud prichazi z hlediska aplikace v uvahu.
    17.9.2012 14:57 filbar | skóre: 36 | blog: Denicek_programatora | Ostrava
    Rozbalit Rozbalit vše Re: MySQL - podmínka pro sloupec
    Ono jde o to, že daná cena může být pro group_id=0 - všechny uživatele, nebo pro group_id=x, kde x je skupina daného uživatele. A když je cena pro všechny uživatele bez ohledu na skupinu stejná, tak se používá group_id=0, jinak group_id=x. Takže potřebuju právě získat nejprve ceny pro group_id=x a když pro group_id=x není, tak pak výchozí cenu pro group_id=0.
    17.9.2012 15:29 kuka
    Rozbalit Rozbalit vše Re: MySQL - podmínka pro sloupec
    No ja bych to nepitval, asi vis sam nejlip, co potrebujes. V otazce to podle mne pises trochu jinak ("bude jenom group_id=0"), takze si pripadne musis upravit podminku v prvnim dotazu. Rovnez podminka ve druhem dotazu vychazi ze zadani ("s group_id=0, tak i s group_id=2"), pokud je existence radku pro group_id=0 vzdy zarucena, tak tam podminka samozrejme nemusi vubec byt.
    17.9.2012 15:48 Kit
    Rozbalit Rozbalit vše Re: MySQL - podmínka pro sloupec
    Kdybys dokázal specifikovat problém, tak bys možná na to i sám přišel. Takto jenom věštíme. Má mít group_id nějakou konkrétní hodnotu a v případě absence se má použít group_id=0?
    17.9.2012 12:56 Kit
    Rozbalit Rozbalit vše Re: MySQL - podmínka pro sloupec
    Má to sice k dokonalosti daleko, ale mohlo by to fungovat:
    SELECT * FROM
       (SELECT * FROM tab ORDER BY group_id DESC) AS tab2
       GROUP BY product_id;
    17.9.2012 23:20 Jirka
    Rozbalit Rozbalit vše Re: MySQL - podmínka pro sloupec
    SELECT
      COALESCE(t2.id, t1.id),
      t1.product_id,
      COALESCE(t2.group_id, t1.group_id),
      COALESCE(t2.price, t1.price)
    FROM
      tab t1
      LEFT JOIN tab t2 ON (t1.product_id=t2.product_id AND t2.group_id=2)
    WHERE
      t1.group_id = 0;
    
    18.9.2012 00:20 l0gik | skóre: 22
    Rozbalit Rozbalit vše Re: MySQL - podmínka pro sloupec
    Jednoduché - prostě chceš řádky s group_id 2 a takové s groupid 0, ke kterým neexistuje groupid 2...
    SELECT * FROM tabulka WHERE 
    group_id  = 2 OR 
    (group_id = 0 AND product_id NOT IN (SELECT product_id FROM tabulka WHERE group_id = 2))
    
    Pokud bys chtěl řádek s nejvyšším groupid (obecnější řešení), tak
    
    SELECT * FROM TABULKA WHERE (product_id, group_id) IN 
    (SELECT product_id , MAX(group_id) FROM tabulka GROUP BY product_id)
    

    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.