Autor Zpráva
SoulMen
Profil *
Dobrý den,
zřejmě se jedná o velmi jednoduchou věc, ale bohužel jsem ji nedokázal uvést do provozu. Mám dvě tabulky:
hraci
------
id, jmeno, prijmeni, rocnik

hraci_sezony
----------------
id, hrac, sezona, klub, cislo_dresu


Potřeboval bych vybrat hráče, kteří hráli v dané sezóně v daném klubu. Povedlo se mi to přes dva vnořené cykly, ovšem nevýhoda je v tom, že se data nemohou řadit např. podle příjmení apod. Vím, že pro něco podobného se dají použít pokročilejší SQL příkazy, ale nedokázal jsem je uvést do provozu. Vycházel jsem z tohoto článku: http://interval.cz/clanky/sql-spojovani-tabulek-a-tvorba-pohledu/. Bohužel neúspěšně. Děkuji za každé případné nakopnutí správným směrem.
nightfish
Profil
select h.id, h.jmeno, h.prijmeni, h.rocnik from hraci_sezony s join hraci h on s.hrac = h.id where s.sezona = 1 and s.klub = 'jmeno klubu'
SoulMen
Profil *
Děkuji za odpověď, ale v dotazu bude pravděpodobně chyba. Použil jsem ho v této formě:

SELECT h.id, h.jmeno, h.prijmeni, h.rocnik 
FROM hraci_sezony s
JOIN h ON s.hrac = h.id
WHERE s.klub='5' and s.sezona='1'


Snažil jsem se tomu trochu porozumět. Dle mě je část SELECT a část WHERE v pořádku. Pravděpodobně i JOIN, ale nejsem si jistý u části FROM. Není mi tam jasné to 's' na konci. Není chyba tam? Omlouvám se za takový dotaz, ale s těmito příkazy se teprve seznamuji. Děkuji za pochopení.
Alphard
Profil
s je alias, je to totéž jako hraci_sezony as s
join h on ... nelze, tabulku hraci nemůžete vynechat
SoulMen
Profil *
Díky oběma za pomoc a vysvětlení! Přikládám ještě finální podobu fungujícího dotazu.

SELECT hraci.id, hraci.jmeno, hraci.prijmeni, hraci.rocnik 
FROM hraci_sezony s
JOIN hraci ON s.hrac = hraci.id
WHERE s.klub='5' and s.sezona='1'
ORDER BY hraci.prijmeni ASC, hraci.jmeno ASC
Toto téma je uzamčeno. Odpověď nelze zaslat.