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

    Byla vydána (Mastodon, 𝕏) třetí RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.

    Ladislav Hagara | Komentářů: 0
    včera 21:44 | IT novinky

    Apple představil iPhone 17e a iPad Air s čipem M4.

    Ladislav Hagara | Komentářů: 0
    včera 21:11 | Zajímavý software

    Byla vydána verze 1.0 editoru kódů Gram. Jedná se o fork editoru Zed bez telemetrie a umělé inteligence.

    Ladislav Hagara | Komentářů: 0
    včera 20:33 | IT novinky

    Byla oznámena spolupráce GrapheneOS s Motorolou. Podrobnosti v tiskové zprávě. GrapheneOS (Wikpedie) je varianta Androidu zaměřující se na bezpečnost a soukromí.

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

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 26.2.1. Přehled novinek v Changelogu.

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

    Volí se dvě místa v Radě openSUSE. Seznamte se se čtyřmi kandidáty. Členové projektu openSUSE mohou hlasovat od 1. do 8. března. Výsledky budou oznámeny 9. března.

    lkocman | Komentářů: 1
    1.3. 19:22 | IT novinky

    Společnost OpenAI uzavřela dohodu s americkým ministerstvem obrany o poskytování technologií umělé inteligence (AI) pro utajované sítě americké armády. Firma to oznámila několik hodin poté, co prezident Donald Trump nařídil vládě, aby přestala využívat služby společnosti Anthropic.

    Ladislav Hagara | Komentářů: 10
    1.3. 13:33 | IT novinky

    Technologická společnost Anthropic v noci na dnešek oznámila, že se obrátí na soud kvůli rozhodnutí ministerstva obrany označit ji za bezpečnostní riziko dodavatelského řetězce poté, co nevyhověla jeho požadavkům týkajícím se používání umělé inteligence (AI). Prezident Donald Trump krátce před tím uvedl, že nařídil federálním úřadům postupně ukončit využívání jejích AI technologií. Spor mezi firmou vyvíjející chatbot Claude a

    … více »
    Ladislav Hagara | Komentářů: 11
    28.2. 15:44 | Upozornění

    Zemřel Rob Grant, spolutvůrce kultovního sci-fi seriálu Červený trpaslík.

    Ladislav Hagara | Komentářů: 8
    27.2. 17:33 | IT novinky

    Apple oznámil, že iPhone a iPad jako první a jediná zařízení pro koncové uživatele splňují požadavky členských států NATO na zabezpečení informací. Díky tomu je možné je používat pro práci s utajovanými informacemi až do stupně „NATO Restricted“, a to bez nutnosti instalovat speciální software nebo měnit nastavení. Žádné jiné běžně dostupné mobilní zařízení tak vysokou úroveň státní certifikace dosud nezískalo.

    Ladislav Hagara | Komentářů: 20
    Které desktopové prostředí na Linuxu používáte?
     (17%)
     (6%)
     (0%)
     (12%)
     (27%)
     (2%)
     (5%)
     (2%)
     (13%)
     (26%)
    Celkem 991 hlasů
     Komentářů: 25, poslední 3.2. 19:50
    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: 1340×
    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.