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 23:55 | Komunita

    Ubuntu 26.04 LTS bude (𝕏) Resolute Raccoon (rezolutní mýval).

    Ladislav Hagara | Komentářů: 0
    včera 21:00 | Nová verze

    Netwide Assembler (NASM) byl vydán v nové major verzi 3.00. Přehled novinek v poznámkách k vydání v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    včera 20:11 | Komunita

    Linuxová distribuce Frugalware (Wikipedie) ke konci roku 2025 oficiálně končí.

    Ladislav Hagara | Komentářů: 0
    včera 17:22 | Nová verze

    Byla vydána nová verze 3.0.6 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP bude brzy k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    včera 16:11 | IT novinky

    Americký výrobce čipů AMD uzavřel s americkou společností OpenAI smlouvu na několikaleté dodávky vyspělých mikročipů pro umělou inteligenci (AI). Součástí dohody je i předkupní právo OpenAI na přibližně desetiprocentní podíl v AMD.

    Ladislav Hagara | Komentářů: 1
    včera 12:22 | Nová verze Ladislav Hagara | Komentářů: 0
    5.10. 20:00 | Komunita

    Byly zpracovány a na YouTube zveřejněny videozáznamy z konference LinuxDays 2025.

    Ladislav Hagara | Komentářů: 0
    4.10. 15:22 | IT novinky

    Na konferenci LinuxDays 2025 byl oficiálně představen nový router Turris Omnia NG.

    Ladislav Hagara | Komentářů: 34
    4.10. 05:22 | Komunita

    Přímý přenos (YouTube) z konference LinuxDays 2025, jež probíhá tento víkend v Praze v prostorách FIT ČVUT. Na programu je spousta zajímavých přednášek.

    Ladislav Hagara | Komentářů: 16
    3.10. 22:44 | IT novinky

    V únoru loňského roku Úřad pro ochranu osobních údajů pravomocně uložil společnosti Avast Software pokutu 351 mil. Kč za porušení GDPR. Městský soud v Praze tuto pokutu na úterním jednání zrušil. Potvrdil ale, že společnost Avast porušila zákon, když skrze svůj zdarma dostupný antivirový program sledovala, které weby jeho uživatelé navštěvují, a tyto informace předávala dceřiné společnosti Jumpshot. Úřad pro ochranu osobních údajů

    … více »
    Ladislav Hagara | Komentářů: 10
    Jaké řešení používáte k vývoji / práci?
     (38%)
     (45%)
     (15%)
     (17%)
     (22%)
     (15%)
     (18%)
     (16%)
     (15%)
    Celkem 181 hlasů
     Komentářů: 12, poslední 4.10. 20:35
    Rozcestník

    Dotaz: mysql 3.23 slozeny dotaz

    8.2.2009 19:18 Dušan Hokův | skóre: 43 | blog: Fedora a další...
    mysql 3.23 slozeny dotaz
    Přečteno: 575×
    Zdravim, pokousim se z jedne tabulky poscitat pocet komentaru k jednotlivym clankum a pote do tabulky clanku aktualizovat pocet komentaru. Potrebuji poradit co je spatne:
    UPDATE nuke_stories_zal set comments.nuke_stories_zal=soucet where sid.nuke_stories_zal IN
    (
    SELECT COUNT(sid) AS soucet, sid FROM nuke_comments GROUP BY sid
    )
    
    Spodni cast samostatne funguje a vraci tabulku se sloupci soucet a sid.

    Predem diky za pomoc.

    Odpovědi

    9.2.2009 09:28 razor | skóre: 33
    Rozbalit Rozbalit vše Re: mysql 3.23 slozeny dotaz

    Není problem v tom, že 3.23 neumí poddotaz ?

    9.2.2009 18:55 Dejv | skóre: 37 | blog: Jak ten blog nazvat ... ? | Ostrava
    Rozbalit Rozbalit vše Re: mysql 3.23 slozeny dotaz
    Ja bych rekl, ze problem je bud v #1 nebo proste v tom, ze selectem sice poscitas pocty komentaru, ale UPDATE nevi, ktery pocet patri ke kteremu clanku (nema vazbu mezi nuke_comments.sid a nuke_stories_zal.comments). Zkusil bych neco jako
    UPDATE nuke_stories_zal SET nuke_stories_zal.comments = count(nuke_comments.sid)
    FROM nuke_comments
         JOIN nuke_stories_zal ON nuke_stories_zal.sid = nuke_comments.sid
    GROUP BY nuke_comments.sid
    A krom toho mas v set a where IMHO prehozene jmena sloupcu a tabulek :-)

    Dejv
    Pevně věřím, že zkušenější uživatelé mě s mými nápady usměrní a pošlou tam, kam tyto nápady patří...
    default avatar 10.2.2009 10:01 default | skóre: 22 | Madrid
    Rozbalit Rozbalit vše Re: mysql 3.23 slozeny dotaz

    Ty vole! Já chci taky databázi, která umí klauzili FROM v UPDATE statementu. :-D

    10.2.2009 21:37 Dejv | skóre: 37 | blog: Jak ten blog nazvat ... ? | Ostrava
    Rozbalit Rozbalit vše Re: mysql 3.23 slozeny dotaz
    Ja netvrdim, ze MySQL 3.23 toto umi, mozna jsem opravdu strelil hodne mimo. Ale ten update ... from ... join neni z moji hlavy - MSSQL to umi a tam jsem se s tim taky setkal poprve. A taky jsem na to hledel jak tele na nove vrata.

    Pr.:
    update d 
    	set d.typ_uhrady = nova_hodnota
    	from #davka d
    		join #faktur f on f.id_poj = d.id_poj and f.id_icz = d.id_icz
    	where f.akce = 'ZMEN_TYP_UHRADY'
    A taky
    delete d
    	from #davka d 
    		join #fakt f on f.id_poj = d.id_poj
    	where f.akce = 'NEFAKTURUJ'
    Mozna to je nejaky "MS-standard", to nevim. Ale urcite to neni k zahozeni. Updatovat jednu tabulku podle podminky na jine tabulce... A o to mi slo v me odpovedi - on proste IMHO potrebuje ty tabulky nejak spojit.

    Dejv
    Pevně věřím, že zkušenější uživatelé mě s mými nápady usměrní a pošlou tam, kam tyto nápady patří...
    AraxoN avatar 11.2.2009 00:02 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: mysql 3.23 slozeny dotaz

    Tak si spusť postgres! ;-)

    default avatar 10.2.2009 09:57 default | skóre: 22 | Madrid
    Rozbalit Rozbalit vše Re: mysql 3.23 slozeny dotaz
    Příloha:

    No, já nevím. Podle mě ten dotaz fungovat nemůže, protože je tak trošku syntakticky špatně:

    UPDATE nuke_stories_zal
    SET
        comments.nuke_stories_zal = soucet
    WHERE
        sid.nuke_stories_zal IN (SELECT
                    COUNT(sid) AS soucet,
                    sid
                FROM
                    nuke_comments
                GROUP BY
                    sid)
    

     Jak je vidět z přepisu:

    1. SELECT statement v IN klauzuli vrací dva sloupce, přestože levý operand má sloupec jen jeden
    2. v SET klauzuli se UPDATE statement odkazuje na tabulku (nebo alias tabulky) COMMENTS, která není definovaná
    3. neznám strukturu tabulky NUKE_STORIES_ZAL, ale sloupec SOUCET v ní patrně neexistuje a patrně to má být odkaz na sloupec v korelovaném poddotazu

    Správně ten dotaz má být:

    UPDATE stories s
    SET
        s.story_comments_cnt = (SELECT
                    COUNT(1)
                FROM
                    comments cmnts
                WHERE
                    cmnts.story_id = s.story_id)
    /
    

    V příloze je celý skript (struktura plus testovací data). Hodně štěstí.

    10.2.2009 10:46 neaktivni | skóre: 24 | blog: neaktivni
    Rozbalit Rozbalit vše Re: mysql 3.23 slozeny dotaz
    No Váš skript sice vypada přehledně, ale pro praktické použití bych určitě dal přednost JOINu. Tipuji, že bude výrazně rychlejší, pokud si ten váš dotaz db engine sám nezoptimalizuje do JOINu.
    default avatar 10.2.2009 16:25 default | skóre: 22 | Madrid
    Rozbalit Rozbalit vše Re: mysql 3.23 slozeny dotaz

    A můžeme poprosit o příklad? Klidně to může být také nějaký skript :-)

    14.2.2009 14:34 Smajchl | skóre: 39 | blog: Drzy_Nazory | Praha
    Rozbalit Rozbalit vše Re: mysql 3.23 slozeny dotaz
    V takovymhle pripade mam u MySQL opacnou zkusenost, join je nekolikrat pomalejsi... a left join je uplne nejpomalejsi.
    My máme všechno co chcem, my máme dobrou náladu!
    talpa avatar 17.2.2009 14:49 talpa | skóre: 2 | Praha 4
    Rozbalit Rozbalit vše Re: mysql 3.23 slozeny dotaz

    to bude tim ze mysql je pseudodatabaze, jsem zkousel v 5tce delat storky, co ta db delala to by jeden neveril....a hlavne mela problem s backupem dokonce zapominala ze ma triggery a storky a backupy delala bez :)))) zahodte to..

    Tak nejak vse co mi prijde pod ruku
    17.2.2009 18:35 Smajchl | skóre: 39 | blog: Drzy_Nazory | Praha
    Rozbalit Rozbalit vše Re: mysql 3.23 slozeny dotaz
    jj taky mam takovej pocit ze mysql je dobra jen na maly projekty...
    My máme všechno co chcem, my máme dobrou náladu!

    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.