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 16:44 | IT novinky

    S koncem roku 2025 skončila standardní podpora operačního systému HP-UX (Hewlett Packard Unix).

    Ladislav Hagara | Komentářů: 2
    dnes 14:33 | Nová verze

    K 1. lednu 2026 končí 70leté omezení majetkových autorských práv děl autorů zesnulých v roce 1955, viz 2026 in public domain. V americkém prostředí vstupují do public domain díla z roku 1930, viz Public Domain Day.

    |🇵🇸 | Komentářů: 1
    včera 15:00 | Nová verze

    Všem vše nejlepší do nového roku 2026.

    Ladislav Hagara | Komentářů: 10
    včera 13:33 | Zajímavý software

    Crown je multiplatformní open source herní engine. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT a GPLv3+. Byla vydána nová verze 0.60. Vyzkoušet lze online demo.

    Ladislav Hagara | Komentářů: 0
    včera 12:11 | Zajímavý článek

    Daniel Stenberg na svém blogu informuje, že po strncpy() byla ze zdrojových kódů curlu odstraněna také všechna volání funkce strcpy(). Funkci strcpy() nahradili vlastní funkcí curlx_strcopy().

    Ladislav Hagara | Komentářů: 6
    včera 03:00 | Nová verze

    Byla vydána nová verze 25.12.30 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    30.12. 18:55 | IT novinky

    Společnost Valve publikovala přehled To nej roku 2025 ve službě Steam aneb ohlédnutí za nejprodávanějšími, nejhranějšími a dalšími nej hrami roku 2025.

    Ladislav Hagara | Komentářů: 0
    30.12. 16:11 | Komunita

    Byly publikovány výsledky průzkumu mezi uživateli Blenderu uskutečněného v říjnu a listopadu 2025. Zúčastnilo se více než 5000 uživatelů.

    Ladislav Hagara | Komentářů: 0
    30.12. 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ářů: 0
    29.12. 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.

    NUKE GAZA! 🎆 | Komentářů: 23
    Kdo vám letos nadělí dárek?
     (29%)
     (1%)
     (28%)
     (1%)
     (2%)
     (1%)
     (10%)
     (9%)
     (19%)
    Celkem 235 hlasů
     Komentářů: 22, poslední včera 15:34
    Rozcestník

    Dotaz: SQL dotaz - vyber vice hodnot z tabulek

    10.9.2011 18:05 xts | skóre: 10
    SQL dotaz - vyber vice hodnot z tabulek
    Přečteno: 1336×
    zdravim, prosim o pomoc s sql dotazem, uz do toho cumim nekolik veceru a nemuzu si to v hlave spravne predstavit tak abych zformuloval funkcni dotaz. Nejlip popisu co potrebuju kdyz pouziju tenhle priklad http://zdrojak.root.cz/clanky/navrh-databaze-nosql-vs-sql/ ten obrazek hned nahore. tedy: zjednodusene mam 3 tabulky:
    Kino:
    id    nazev    adresa
    1     smichov  praha 5
    2     galaxie  praha 4
    
    Filmy (pro zjednoduseni jen nazev):
    id    nazev
    1     blade
    2     blade 2
    3     saturnin
    4     transformers
    5     akta X
    
    Predstaveni (kde se co hraje, kino_id je id z tab. kino, film_id je id z tab. Filmy):
    id    kino_id  film_id
    1     1        1
    2     1        2
    3     1        5
    4     2        2
    5     2        3
    6     2        4
    7     2        5

    no a ted potrebuju vybrat kino ktery hraje filmy 3,4 a 5. Dotazy mi vratej bud 3 ruzny polozky, nebo nic. Potrebuju zformulovat dotaz ktery mi vrati jako vysledek kino c.2 protoze hraje filmy 3,4 i 5. diky za napady

    Řešení dotazu:


    Odpovědi

    10.9.2011 19:20 jekub
    Rozbalit Rozbalit vše Re: SQL dotaz - vyber vice hodnot z tabulek
    Pokud je
    (kino_id,film_id)
    v tabulce
    predstaveni
    unikátní, tak by mohlo fungovat
    select k.id
    from kino k,filmy f, predstaveni p
    where
    k.id=p.kid and f.id=p.fid and f.id in(3,4,5)
    group by k.id
    having count(*)=(
       select count(*) from filmy where f.id in(3,4,5)
    )
    
    Řešení 1× (xts (tazatel))
    10.9.2011 20:03 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: SQL dotaz - vyber vice hodnot z tabulek

    Pokud unikátní není, šlo by např.

      select distinct K.ID from KINA K
        inner join PREDSTAVENI P3 on P3.KINO_ID=K.ID and P3.FILM_ID=3
        inner join PREDSTAVENI P4 on P4.KINO_ID=K.ID and P3.FILM_ID=4
        inner join PREDSTAVENI P5 on P5.KINO_ID=K.ID and P3.FILM_ID=5
    

    nebo

      select distinct P3.KINO_ID from PREDSTAVENI P3 where P3.FILM_ID=3
        inner join PREDSTAVENI P4 on P4.KINO_ID=P3.KINO_ID and P3.FILM_ID=4
        inner join PREDSTAVENI P5 on P5.KINO_ID=P3.KINO_ID and P5.FILM_ID=5
    

    případně přes subselecty

      select K.ID from KINA K
        where exists (select P3.ID from PREDSTAVENI P3 where P3.KINO_ID=K.ID and P3.FILM_ID=3)
          and exists (select P4.ID from PREDSTAVENI P4 where P4.KINO_ID=K.ID and P4.FILM_ID=4)
          and exists (select P5.ID from PREDSTAVENI P5 where P5.KINO_ID=K.ID and P5.FILM_ID=5)
    
    10.9.2011 20:28 jekub
    Rozbalit Rozbalit vše Re: SQL dotaz - vyber vice hodnot z tabulek
    Pokud by to nebylo unikátní, asi bych použil
    select k.id
    from kino k,filmy f,(
       select distinct kid,fid from predstaveni
    ) p
    where
    k.id=p.kid and f.id=p.fid and f.id in(3,4,5)
    group by k.id
    having count(*)=(
       select count(*) from filmy where f.id in(3,4,5)
    )
    
    13.9.2011 00:09 xts | skóre: 10
    Rozbalit Rozbalit vše Re: SQL dotaz - vyber vice hodnot z tabulek
    tohle mi pise chybu #1054 - Unknown column 'kid' in 'field list'.

    Ale alespon jsem si precetl k cemu je distinct :-)

    kazdopadne taky dekuju
    13.9.2011 00:00 xts | skóre: 10
    Rozbalit Rozbalit vše Re: SQL dotaz - vyber vice hodnot z tabulek
    prvni mi nevrati nic, druhy pise chybu #1064 a pise o spatny sql syntaxi, ale treti je super a jede.

    Muze to byt nejaka uplna kravinka proc to nejde, tak moc se v slozitejsich dotazech nevyznam, kazdopadne ta treti varianta mi funguje super i v ruznejch upravach takze nad zbylyma nebudu patrat - diky, netusil sem ze ty dotazy jdou takhle vnorit.
    12.9.2011 23:55 xts | skóre: 10
    Rozbalit Rozbalit vše Re: SQL dotaz - vyber vice hodnot z tabulek
    ne, tam je unikatni id.
    10.9.2011 22:24 kuka
    Rozbalit Rozbalit vše Re: SQL dotaz - vyber vice hodnot z tabulek
    na toto se pouziva exists, v tvem pripade konjunkce tri exists podminek, pro kazdy film jedna

    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.