» Poradna » Programy

SQL dotaz vazby 1:N

 |   | 

Poradí mi někdo jak udělat "SELECT" dotaz na dvěma tabulkami, kde první má klíč a nějaké hodnoty a ve druhé tabulce je primární klíč stejný jako v první, ale víckrát ve více řádcích. A právě hodnoty z druhé tabulky bych potřeboval vrátit v jednom řádku podle zvoleného klíče z první tabulky.

Př.
tabulka1:
id | mesto
---------
1 | Praha
2 | Brno

tabulka2:

id | usek
---------
1 | Malá strana
1 | Hradčany
2 | Královo pole

A potřeboval bych např. když zvolím id v první tabulce 1, aby mi "select" vrátil pouze jeden řádek a podle počtu indexů v druhé tabulce patřičný počet sloupců.

Výsledek by měl být asi takový:

id | mesto | usek | usek
------------------------------------
1 | Praha | Malá strana | Hradčany

Děkuji za radu. Petr

Mohlo by vás také zajímat

Odpovědi na otázku

 |   | 

tak to nevím jestli je toto možné..možná přes dočasné tabulky...nevím
a proč to vlastně potřebuješ mět v jednom řádku?

Souhlasím  |  Nesouhlasím  |  Odpovědět
 | 

Resenim je treba ulozena procedura, ktera ti vytvori dcasnou tabulku s prislusnym poctem sloupcu na zaklade toho, kolik radku prvni dotaz vrati, naplni ji hodnotami a vrati.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

Diky, uz mam vyreseno.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

Tady bude špatně už zadání úlohy, výsledek s proměnným počtem sloupců závislým na datech se bude špatně zpracovávat a v dobře navržené databázové aplikaci to nemá co dělat. Zkus sem napsat trochu obecnější zadání úlohy, k čemu to má vlastně sloužit. Myslím, že se nakonec tomuto problému úplně vyhneš.

Souhlasím  |  Nesouhlasím  |  Odpovědět

Související témata: Malá strana, Hradčany, Primární klíč, Královo Pole