Kontrola v 1 tabulke a nasledny vyber v druhej – MySQL – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Kontrola v 1 tabulke a nasledny vyber v druhej – MySQL – Fórum – Programujte.comKontrola v 1 tabulke a nasledny vyber v druhej – MySQL – Fórum – Programujte.com

 

marioff0
Expert
1. 12. 2009   #1
-
0
-

Caute,

vie mi niekto poradit dotaz na db v takom tvare ktory mi zaruci toto:

tab.1 - krajiny:
kod --- skratka_krajiny
-------------
sk --- sk
cz --- cz
rs --- rs
cs --- rs
-------------

atd....

tab.2 - info:
krajina --- info
-----------------
sk --- Bratislava.....
cz --- Praha....
rs --- Belehrad......
------------------

Potrebujem v prvej porovnat ci sa rovna VSTUP s kod, ak ano urobit SELECT z druhej tab, ale aby skratka_krajiny==krajina...

Je to mozne urobit len jednym dotazom, lebo zatial som sa moc nepohol... :smile14:

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
d.mostek0
Návštěvník
1. 12. 2009   #2
-
0
-

SELECT info FROM info WHERE krajina = (SELECT skratka_krajiny FROM krajiny WHERE kod = VSTUP)

Nejsem si jistej, jestli MySQL podporuje sub-selecty. Zkoušel jsem to na postgresql.

Nahlásit jako SPAM
IP: 147.32.127.–
www.dominik-mostek.cz
dannyk0
Věrný člen
1. 12. 2009   #3
-
0
-



SELECT info FROM krajiny, info WHERE krajiny.skratka_krajiny=%s AND krajiny.kod=info.krajina

Nahlásit jako SPAM
IP: 85.135.97.–
Jedu v c++,c#,assembler,ASP.NET,PHP,databaze,bezpecnost softwaru[br] -----------------------------------------------------------[br] Muj blog o programovani,hudbe a vsem moznem,co najdu na netu :) [br] http://dannyk.aspone.cz[br] -----------------------------------------------------------[br] Na foru mam nejake prispevky pod nickem Master,tak jen pro upresneni :)
marioff0
Expert
2. 12. 2009   #4
-
0
-

dikes chlapaci.... slape to...

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
Golem0
Newbie
29. 12. 2009   #5
-
0
-

d.mostek napsal:

SELECT info FROM info WHERE krajina = (SELECT skratka_krajiny FROM krajiny WHERE kod = VSTUP)

Nejsem si jistej, jestli MySQL podporuje sub-selecty. Zkoušel jsem to na postgresql.



Zkratka se píše se z a ne se s :)

Jinak bych to řešil stejně.

Nahlásit jako SPAM
IP: 62.245.72.–
w3m0
Grafoman
29. 12. 2009   #6
-
0
-

Golem: Pokud tady nechces chces mit zkratka se S, budes muset zabanovat slovaky... pak tady vsechno budes mit krasne se Z :)
Jinak v pohode.)

d.mostek: Jiste, ze podporuje....
edit: Jsem jediny idiot, ktery by pouzil LEFT JOIN? jak by to bylo s vykonem?

Nahlásit jako SPAM
IP: 84.42.151.–
Sa Nata A Na. Howgh
123456789
~ Anonymní uživatel
1 příspěvek
31. 12. 2009   #7
-
0
-

Nevím k čemu LEFT JOIN. Když už , tak vnitřní spojení, pokud jsem to dobře pochopil, tak tazatel nechce vybrat nesouvisející řádky ani nechce vybrat částečnou shodu řádků z tabulek krajiny a info, ale jen takové, kde se krajiny.skratka_krajiny=info.krajina.

Pomocí vnitřního spojení, tedy inner joinu by to pak vypadalo nějak takhle:

SELECT [pažadované atributy] FROM krajiny,info WHERE krajiny.kod=[vstup] AND krajiny.skratka_krajiny=info.krajiny;

nebo ještě trochu jiná syntaxe:
SELECT [pažadované atributy] FROM krajiny INNER JOIN info ON krajiny.kod=[vstup] AND krajiny.skratka_krajiny=info.krajiny;

Nahlásit jako SPAM
IP: 90.179.140.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 13 hostů

Podobná vlákna

Checkboxy v tabulke — založil Rudolf

Poradie v tabulke — založil hudi

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý