Forum » Programiranje » SQL Join problemček... ?
SQL Join problemček... ?
erik ::
Pozdravljeni....
... iščem mojstra, ki bi mi razvozlal naslednji SQL stavek:
"SELECT .... FROM ((Table1 INNER JOIN Table2 ON " & _
"Table1.Voznik = Table2.ID) INNER JOIN Table3 ON " & _
"Table1.RelacijaOd = Table3.ID) INNER JOIN Table3 ON " & _
"Table1.RelacijaDo = Table3.ID WHERE Name = " & txtName.txt
Stvar je taka, da imam za tableo Table3 dva pogoja za prikaz....
In javi mi napako Inavlid Join espression.
To bi moral dat v kakšen Subquery, vendar nimam pojma kako...
kakšna ideja....?
hvala
... iščem mojstra, ki bi mi razvozlal naslednji SQL stavek:
"SELECT .... FROM ((Table1 INNER JOIN Table2 ON " & _
"Table1.Voznik = Table2.ID) INNER JOIN Table3 ON " & _
"Table1.RelacijaOd = Table3.ID) INNER JOIN Table3 ON " & _
"Table1.RelacijaDo = Table3.ID WHERE Name = " & txtName.txt
Stvar je taka, da imam za tableo Table3 dva pogoja za prikaz....
In javi mi napako Inavlid Join espression.
To bi moral dat v kakšen Subquery, vendar nimam pojma kako...
kakšna ideja....?
hvala
Matej_ ::
Podaj malo več podatkov o problemu - zakaj povezuješ tri tabele (kaj se v kaki nahaja), kaj sploh poskušaš doseči - tako na hitro bi rekel da želiš izpisati vse "vožnje" na neki relaciji, z nekim imenom? Kateri DBMS uporabljaš (SQL server?)
erik ::
Stvar je del VB 6.0 kode.
Bom malo razložil kakšen problemček imam:
In sicer imam glavno tabelo Prevozi v katerem so zapisi voženj (relacije, voznik...).
Ti zapisi so shranjeni z ID-ji (npr. št. relacije, voznik...).
Zraven v bazi pa so še tabele voznikov, relacij,... oz. šifranti z 2 polji - ID in naziv.
Ko naredim poizvedbo z INNER JOIN mi iz Tabele tabela prikaže Nazive namesto ID-jev.
Stvar deluje.... dokler je iz enega šifranta treba prikazati en podatek v tabeli poizvedbe.
Ko pa želim iz enega šifranta prikazati naziv 2x se pa ustavi.
Primer:
Imam pole RelacijaOd in RelacijaDo v glavni tabeli Prevozi.
Šifrant relacij imam samo en.
Se pravi, želim v poizvedbi priklicati naziv relacije za polje RelacijaOd in za pole RelacijaDo iz enakega šifranta...
To je to... in tu se stvar konča!
Bom malo razložil kakšen problemček imam:
In sicer imam glavno tabelo Prevozi v katerem so zapisi voženj (relacije, voznik...).
Ti zapisi so shranjeni z ID-ji (npr. št. relacije, voznik...).
Zraven v bazi pa so še tabele voznikov, relacij,... oz. šifranti z 2 polji - ID in naziv.
Ko naredim poizvedbo z INNER JOIN mi iz Tabele tabela prikaže Nazive namesto ID-jev.
Stvar deluje.... dokler je iz enega šifranta treba prikazati en podatek v tabeli poizvedbe.
Ko pa želim iz enega šifranta prikazati naziv 2x se pa ustavi.
Primer:
Imam pole RelacijaOd in RelacijaDo v glavni tabeli Prevozi.
Šifrant relacij imam samo en.
Se pravi, želim v poizvedbi priklicati naziv relacije za polje RelacijaOd in za pole RelacijaDo iz enakega šifranta...
To je to... in tu se stvar konča!
krho ::
Zakaj pa tole: "SELECT * FROM Table1, Table2 Table3, WHERE Table1.Voznik = Table2.ID AND Table1.RelacijaOd = Table3.ID AND Table1.RelacijaDo = Table3.ID WHERE Name AND Name = " & txtName.txt ni OK
si.Mail odprto-kodni odjemalec elektronske pošte. - http://www.simail.si
Uredite si svojo zbirko filmov, serij in iger - http://xcollect.sf.net
Uredite si svojo zbirko filmov, serij in iger - http://xcollect.sf.net
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | MYSQL vprašanjeOddelek: Programiranje | 1810 (1425) | MrBrdo |
» | [SQL] InsertOddelek: Programiranje | 2088 (1690) | greentech |
» | pgSQL problem z indexi...Oddelek: Izdelava spletišč | 1169 (1079) | Tito |
» | SQL select problemčekOddelek: Programiranje | 1089 (959) | darh |
» | SQL stavek - zajeban?Oddelek: Programiranje | 1094 (981) | edmund |