SQL Problem mit Join

Hallo Zusammen,

hänge seit einer Stunde an einer Query und sehe einfach den Fehler nicht. Entweder ist es nicht mein Fehler oder ich bin blind(blöd)…

Ich will auf einem SQL-2000 Server mit der Konsole von Sybase SQL-Advantage folgende Abfrage ausführen:

SELECT reference_text
FROM titles_references
JOIN titles_in_class
ON titles_in_class.title_id = titles_references.title_id
WHERE titles_in_class.class_id = 442

Dabei bekomme ich folgenden Fehler:

Server Message: Number 102, Severity 15
Line 3:
Incorrect syntax near ‚JOIN‘.

Die Betroffenen Tabellen sehen bestehen aus folgenden Feldern:

titles_in_class(class_id, title_id, is_primary_class, order_in_class)
titles_references(title_id, reference_id, reference_text)

Wäre dankbar für eure Hilfe!

Viele Grüße
Hendrik

Hallo,

mußt Du den Join nicht näher spezifizieren (INNER, LEFT, RIGHT, OUTER)?

MfG,

ujk

Moin, Hendrik,

SELECT reference_text
FROM titles_references
JOIN titles_in_class
ON titles_in_class.title_id = titles_references.title_id
WHERE titles_in_class.class_id = 442

bist Du sicher, dass die WHERE-Klausel eine Table ansprechen kann, die nicht in der FROM-Klausel steht?

Gruß Ralf

Hi!

(So wie Ralfs Vermutung)

SELECT reference\_text
FROM titles\_references
JOIN titles\_in\_class
ON titles\_in\_class.title\_id = titles\_references.title\_id
AND titles\_in\_class.class\_id = 442

Das WHERE durch ein AND getauscht … und schon müßte es klappen …

Grüße,
Tomh

Hi nochmal,

erst mal danke für eure Antworten.

Also den JOIN muss ich soweit ich weiss nich weiter spezifizieren, und das bringt auch nichts wenn ich es mache.

Tausche ich WHERE durch AND aus habe ich immer noch den selben Fehler.

Ich habe auch mal probiert die Abfrage mit anderen Tabellen zu machen - auch dort bekomme ich den Fehler.

Hat vielleicht jemand eine Idee für ein „workaround“ mit dem ich das selbe Ergebniss bekommen würde?

Bin leider nicht all zu fit mit SQL.

Vielen Dank
Hendrik

Servus, Hendrik,

mein Access sagt das gleiche wie Dein Oracle, mir ist aber völlig rätselhaft, warum. Irgendwer muss die 4 Zeichen verhext haben :smile:))

Ohne Join geht’s auch (nix zum Beißen damals, arschkalt war’s, an W… gar nicht zu denken…), versuch’s mal hiermit:

 SELECT reference\_text
 FROM titles\_references, titles\_in\_class 
 WHERE titles\_in\_class.title\_id = titles\_references.title\_id
 and titles\_in\_class.class\_id = 442;

Gruß Ralf

Servus,

und Dankeschön. Ohne JOIN funktioniert es auf einmal :smile:)

SELECT reference_text
FROM titles_references, titles_in_class
WHERE titles_in_class.title_id = titles_references.title_id
and titles_in_class.class_id = 442;

Gruß
Hendrik

Hi!

Ohne Join geht’s auch

Und bis auf den FULL-OUTER-JOIN sogar am allerbesten.

Grüße,
Tomh