Klaus Mock: welche funktion für primärschlüssel

Beitrag lesen

Hallo,

Ich habe mir schon überlegt, ob ich es mit JOIN oder nicht formulieren sollte. ...

Das (SELECT x,y,z FROM tab1,tab2) _ist_ ein JOIN, auch wenn das Wort "JOIN" nirgendwo auftaucht.

Das ist mir schon klar. Ich habe mich eher auf das Schlüsselwort JOIN in Datenbanken wie mySQL bezogen, nicht auf das Verknüpfen mehrerer Tabellen bei Abfragen an sich.

Oracle hat für JOINs eine andere Syntax -

Ja, nämlich
select blablabal
  from tabelle1, tabelle2
  where tabelle1.id = tabelle2.fk

(das trifft zumindest auf alle Versionen bis einschließlich 8 zu, die 9er kennt AFAIK inzwischen auch die JOIN-Syntax )

Oracle scheint mir sowieso in vielen Dingen ganz anders gestrickt zu sein, als z.B. mySQL.

Das ist wohl wahr.
Aber welche Datenbank kennst Du eigentlich, die nicht ihr eigenes Süppchen kocht?

Ich würde sogar behaupten, die weiteren WHERE-Abfragen lassen sich auch noch in den ON-Teil integrieren. Vorteil ist Performancegewinn, da die entstehende Zwischentabelle kleiner ist.

Hmm, könntest Du einmal näher erläutern, wie Du Dir das so vorstellst?

Der Unterschied zwischen [...] oder ob die Zwischentabelle 10.000x10.000=100.000.000 Zeilen groß ist.

Nein, das meinte ich nicht. Ich wollte wissen, wie Du die anderen WHERE-Bedingungen [1] auch mit 'JOIN ON' abbilden willst. Oder habe ich da was falsch verstanden?

Grüße
  Klaus

[1]

WHERE
     tabelle1.feld5 = 1
    AND
     tabelle1.feld6 > 1000