Diskuze: Selekce ID z vazební tabulky

Ostatní jazyky SQL SQL a databáze Selekce ID z vazební tabulky

Avatar
g1ml1
Člen
Avatar
g1ml1:

Zdravím,
mám tabulky Destinace a Ulice, jsou v relaci MxN, takže vazební tabulka vypadá nějak takto

Destinace_ID|Ulice_ID
    1           5
    2           5
    1           3
    1           1

Na výstupu potřebuji získat Destinace_ID pro které znám Ulice_ID. V tomhle případě by byl výstup 1 pro 5,3,1. DB je v MSSQL.

 
Odpovědět 27.11.2013 12:15
Avatar
Kit
Redaktor
Avatar
Odpovídá na g1ml1
Kit:

Pro 5 je přece výsledkem {1, 2}

Nahoru Odpovědět 27.11.2013 13:41
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
g1ml1
Člen
Avatar
Odpovídá na Kit
g1ml1:

To ano, pravě proto potřebuji zjistit tu Destinaci, kde jsou právě tyto tři ulice.

 
Nahoru Odpovědět 27.11.2013 13:50
Avatar
Kit
Redaktor
Avatar
Odpovídá na g1ml1
Kit:

Aha, ty chceš asi něco takového:

SELECT vazba.Destinace_ID FROM vazba
    JOIN vazba AS vazba1 USING (Destinace_ID)
    JOIN vazba AS vazba2 USING (Destinace_ID)
    WHERE vazba.Ulice_ID=1 AND vazba1.Ulice_ID=3 AND vazba2.Ulice_ID=5;
Nahoru Odpovědět 27.11.2013 13:55
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
g1ml1
Člen
Avatar
Odpovídá na Kit
g1ml1:

Super, tohle funguje, díky moc.
Každopádně celkem brutalní dotaz a to tabulka Destinace má ještě MxN vazbu na tabulku Cesta. A celý ten dotaz musím generovat dynamicky to bude masakr.

 
Nahoru Odpovědět 27.11.2013 14:23
Avatar
Kit
Redaktor
Avatar
Odpovídá na g1ml1
Kit:

To je ještě docela v pohodě. Až budeš spojovat 30 tabulek, bude to horší.

Nahoru Odpovědět 27.11.2013 14:34
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.