Forum » Izdelava spletišč » sql težava
sql težava
chrush ::
Pozdravljeni
Imam tri tabele:
tabelo klubi (idkluba, imekluba) uporabniki (iduporabnika, nick,iduporabnikovklub) in tekme (idtekme,iddomacegakluba, idgostujocegakluba, domagoli, gostegoli) sedaj pa bi rad dobil iz tega npr:
1. arsenal(joze) - milan(tone) - 3:2
...
meni pa zdaj izpiše --> "SELECT * FROM tekme LEFT JOIN klubi ON(tekme.iddomacegakluba = klubi.idkluba) OR (tekme.idgostujocgakluba = klubi.idkluba) " -->
idkluba[1] - idkluba[2]
Imam tri tabele:
tabelo klubi (idkluba, imekluba) uporabniki (iduporabnika, nick,iduporabnikovklub) in tekme (idtekme,iddomacegakluba, idgostujocegakluba, domagoli, gostegoli) sedaj pa bi rad dobil iz tega npr:
1. arsenal(joze) - milan(tone) - 3:2
...
meni pa zdaj izpiše --> "SELECT * FROM tekme LEFT JOIN klubi ON(tekme.iddomacegakluba = klubi.idkluba) OR (tekme.idgostujocgakluba = klubi.idkluba) " -->
idkluba[1] - idkluba[2]
CaqKa ::
ker mi je zanimivo kar si napisal.. sem sam namreč začel s phpjem in sqlom..
tole sem našel:
http://www.w3schools.com/sql/sql_join.a...
tole sem našel:
http://www.w3schools.com/sql/sql_join.a...
chrush ::
zdaj sem tole rešil na sledeč način:
SELECT *
FROM
tekme
LEFT JOIN klubi AS klub1 ON (tekme.iddomacegakluba = klub1.idkluba)
LEFT JOIN klubi AS klub2 ON (tekme.idgostujocegakluba = klub2.idkluba)
ampak nastane težava, ko hočem izpisati klube.
1) Če izpisujem iddomacegakluba - idgostujocegakluba, mi izpiše zgolj idje in imen klubov, ki pripadajo temu klubu.
2) Če izpisujem imekluba mi izpiše samo domači klub
3) Če v tabelo tekme vnašam namesto idje klubov imena klubo sicer dela, ampak jaz bi rad vpisoval idje, ker vem da se to da.
SELECT *
FROM
tekme
LEFT JOIN klubi AS klub1 ON (tekme.iddomacegakluba = klub1.idkluba)
LEFT JOIN klubi AS klub2 ON (tekme.idgostujocegakluba = klub2.idkluba)
ampak nastane težava, ko hočem izpisati klube.
1) Če izpisujem iddomacegakluba - idgostujocegakluba, mi izpiše zgolj idje in imen klubov, ki pripadajo temu klubu.
2) Če izpisujem imekluba mi izpiše samo domači klub
3) Če v tabelo tekme vnašam namesto idje klubov imena klubo sicer dela, ampak jaz bi rad vpisoval idje, ker vem da se to da.
CaqKa ::
jaz sem tudi imel dve tabeli; uporabniki in akcije. v akcije sem imel samo user_id. dokler nisem tvoje teme zasledil, sem s phpjem rešil, da sem povezal ime z idjem.. ko sem pa tole temo našel pa sem preko običnega joina obe tabeli povezal in vse kar je bilo potem je to da sem v onem stavku ko sem skup klepal rezultate v tabelo namesto 'id' klical 'ime', ker je rezultat joina bil to da sem dobil eno tabelo, kjer sem imel še imena (plus ostale podatke iz tabele uporabniki) zraven.
$akcije = mysql_query("SELECT * FROM uporabniki INNER JOIN akcije ON uporabniki.id=akcije.user_id"); $vrstic = mysql_numrows($akcije); // zložiš tabeli transakcije in uporabniki v eno, s tem da j // ih združi po transakcije.user_id=uporabniki.id (prikaže uporabnika 2) // SELECT * FROM akcije INNER JOIN uporabniki // ON uporabniki.id=akcije.user_id WHERE uporabniki.id=2 // for ($i = 0; $i < $vrstic; $i++) { print "\n<tr>\n"; // rezultat v obliki: id ime denar geslo id user_id datum kolicina komentar kategorija print "<td> " . mysql_result($akcije,$i,"akcije.id") . " </td>\n"; print "<td> " . mysql_result($akcije,$i,"ime") . " </td>\n"; print "<td> " . mysql_result($akcije,$i,"datum") . " </td>\n"; print "<td align=\"right\"> " . mysql_result($akcije,$i,"kolicina") . " </td>\n"; print "<td> " . mysql_result($akcije,$i,"komentar") . " </td>\n"; print "\n</tr>\n"; }
Zgodovina sprememb…
- spremenil: CaqKa ()
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [JS / PHP] miniajax postOddelek: Programiranje | 1042 (776) | cobrica |
» | [php, mysql] sortiranje izpisa iz bazeOddelek: Izdelava spletišč | 2709 (2228) | Binji |
» | sortOddelek: Izdelava spletišč | 1279 (1200) | darh |
» | Kaj je narobe tu...(php)Oddelek: Programiranje | 1202 (1100) | teac |
» | MySQL & PHP napaka..Oddelek: Programiranje | 1746 (1561) | lordgreg |