Prodej multi-eshopu DomaciCentrum.cz - čistá marže 750 000 Kč / rok
Zobrazují se odpovědi 1 až 6 z 6

Prosím o pomoc s SQL dotazem

  1. Ahoj všichni.
    Z SQL znám jen nutné základy a teď jsem se zaseknul na sestavení jednoho dotazu. Napíšu sem strukturu tabulky a co bych z toho chtěl dostat.

    tabukla 1 (články)
    id, nazev, kategorie, kod_clanku (1,'Nazev', 123, 555555)
    id, nazev, kategorie, kod_clanku (2,'Nazev2', 124,666666)
    id, nazev, kategorie, kod_clanku (3,'Nazev3', 124, 777777)
    atd.

    tabulka 2 (štítky)
    id, stitek_a, kod_clanku (1,'Auta', 555555)
    id, stitek_a, kod_clanku(2,'Auta', 666666)
    id, stitek_b, kod_clanku(3,'Motorky', 666666)
    atd.


    Jak z toho dostat všechny články kde kategorie=124 a štítek motorky.

    Díky moc.

  2. Happy Robot :]

    Co se právě děje na Webtrhu?

  3. ("WHERE [kategorie]=%i AND [stitek_a]=%s",124,"Motorky")

  4. btw zbytecne duplikujes stitky... struktura by mela byt

    clanky - id, nazev, kategorie, kod_clanku
    stitky - id, stitek
    clanky_stitky - stitek_id, clanek_id

    aneb M:N relace

    k dotazoani pres dve tabulky pak nejcastejsi a nejlepsi reseni byva JOIN

  5. Díky. Jdu si to nastudovat.

    -----------------------
    Edit : Tak jsem do toho dobu koukal a moudrej z toho nejsem. Už je asi pozdě.
    Naposledy upravil KejliCZ : 29.11.2011 v 01:20

  6. Pro tvůj případ by SQL dotaz mohl vypadat např. takto:

    Kód:
    SELECT c.*
    FROM clanky AS c
    INNER JOIN stitky AS s ON s.kod_clanku = c.kod_clanku
    WHERE c.kategorie=124 AND s.stitek='Motorky'
    Jinak jak psal Aleš Jiříček, zbytečně duplikuješ štítky, měl by sis pro ně vytvořit samostatnou tabulku a na štítky odkazovat přes ID.

  7. Díky. Zatím jsem to vyřešil "pracovně" a jde to. Něco se o tom JOIN naučím a pak to udělám pořádně i s tou další tabulkou.

Podobná témata

  1. Clovek na pomoc s SQL dotazem
    By reverb in forum Databáze
    Odpovědí: 2
    Poslední příspěvek: 14.11.2011, 21:55
  2. Pomoc s MySQL dotazem
    By kenod in forum Databáze
    Odpovědí: 17
    Poslední příspěvek: 24.09.2010, 22:28
Hostujeme u Server powered by TELE3