phpbuddy.eu
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 05.03.2003, 08:25   #1
TP-Junior
 
Registriert seit: Oct 2002
Ort: Schweiz
Azrael macht alles soweit korrekt

INNER JOIN - Syntax


Hallo zusammen

Ich hab da eine kleine Meinungsverschiedenheit mit Access
Mein Problem ist der INNER JOIN, speziell wenn man mehrere Tabellen miteinander verbindet. Access macht da irgendwelche Klammern, aber sobald mehr als zwei drei Tabellen vorkommen und ich als Primärschlüssel mehrere Attribute habe, werd ich nicht mehr schlau aus dem Code.
Was ich machen möchte, würde nach Standard so aussehen (bin nicht sicher, dass der Code 100%ig stimmt, da ich ihn noch nicht testen konnte):
Code:
SELECT * 
FROM [Evaluation_objects] AS Ev_obj INNER JOIN [Object_types] AS Obj_t ON Ev_obj.Object_type_ID = Obj_t.Object_type_ID 

INNER JOIN [Age_groups] AS Ag ON Ev_obj.Age_group_ID = Ag.Age_group_ID) 

INNER JOIN [Object_property_values] AS Obj_p_v ON Ev_obj.Object_type_ID = Obj_p_v.Object_type_ID AND Ev_obj.Object_ID = Obj_p_v.Object_ID 

INNER JOIN [Object_properties] AS Obj_p ON Obj_p_v.Object_property_ID = Obj_p.Object_property_ID AND Obj_p_v.Object_type_ID = Obj_p.Object_type_ID 

INNER JOIN [Criteria_values] AS C_v ON Ev_obj.Object_type_ID = C_v.Object_type_ID AND Ev_obj.Object_ID = C_v.Object_ID 

INNER JOIN [Evaluation_criterias] AS Ev_c ON C_v.Object_type_ID = Ev_c.Object_type_ID AND C_v.Object_criteria_ID = Ev_c.Object_criteria_ID
Ich weiss, sind viele Tabellen leider bin ich aber auf diese Abfrage angewiesen.
Irgendwie komm ich einfach nicht dahinter, nach welchem Prinzip Access die Klammern beim INNER JOIN verteilt (Sind ja teilweise recht abstruse Konstruktionen...). Kann mir jemand sagen, wich jetzt vorgehen muss, um diese Abfrage in Access hinzukriegen?
Ich wäre wirklich dankbar, wenn mir da jemand helfen könnte. Ich hab schon diverse Tutorials abgesucht, aber da wird nie auf so komplexe Abfragen eingegangen.

PS. Etwas das mich schon länger beschäftigt, bezüglich Abfragenoptimierung:
Wenn ich folgenden JOIN durchführe
Code:
SELECT *
FROM Table1 JOIN Table2 ON Table1.Key = Table2.Key
WHERE Key = 4
ist das Ergebniss ja klar. Wird jetzt aber zuerst die Tabelle verbunden und dann das Kriterium herausgefiltert? Oder bereits vorher?
Vom Code her meine ich das:
Code:
SELECT * 
FROM (SELECT * FROM Table1 WHERE Key = 4)
JOIN (SELECT * FROM Table2 wHERE Key = 4)
Versteht ihr was ich meine?
Wird das vom DBMS selbst optimiert, oder muss ich das machen?

Vielen Dank im Voraus
Azrael
__________________
Life`s bullshit.
Drink more.
Drink Schnaps!
Azrael ist offline   Mit Zitat antworten


Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
INNER JOIN - Syntax INNER JOIN - Syntax
« Wie kann ich Inhalte nachbearbeiten? | Anfängerfragen »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 00:20 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67