Re(8): SQL Frage
Geizhals » Forum » Programmierung » SQL Frage (55 Beiträge, 737 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
.  Re: SQL Frage  (Somnatic am 01.11.2011, 15:13:08)
..  Re(2): SQL Frage  (dizo am 01.11.2011, 15:21:50)
.  Re: SQL Frage  (thE am 02.11.2011, 15:59:55)
..  Re(2): SQL Frage  (hellbringer am 02.11.2011, 16:09:47)
...  Re(3): SQL Frage  (thE am 02.11.2011, 16:21:50)
....  Re(4): SQL Frage  (hellbringer am 02.11.2011, 16:26:50)
.....  Re(5): SQL Frage  (thE am 02.11.2011, 16:35:21)
......  Re(6): SQL Frage  (hellbringer am 02.11.2011, 16:43:32)
.......  Re(7): SQL Frage  (thE am 03.11.2011, 09:47:29)
........
Re(8): SQL Frage
03.11.2011, 10:03:23
Also wir haben es so gelernt, dass bei nem Join (zumindest bei dem Theta)
alles mit allem verknüpft wird und temporär gespeichert wird und nachher mit
where nur das selektiert wird, was man braucht..


Ein Theta-Join ist ja im Prinzip ein CROSS JOIN. Cross Joins sind eigentlich ganz böse, weil sie alles mit allem verknüpfen. Also wenn du pro Tabelle 1000 Datensätze hat, hat das Ergebnis (ohne WHERE-Bedingungen) 1000000 Datensätze.

Ist der left oder right join da viel performanter?


Am performantesten ist der Inner Join. Aber darum geht es nicht. Man entscheidet sich ja zu einem Join anhand der Aufgabenstellung. Was bringt mir ein Inner Join, wenn ich für das Ergebnis ein Left Join brauche? Right Joins sind eher unüblich, weil man bei uns von Links nach Rechts und nicht von Rechts nach Links "denkt".

Die Performance ist auch nicht der Grund, warum ich vom Theta-Style abrate. Das größte Problem ist diese umständliche und unübersichtliche Schreibweise. Je größer die Abfrage ist, umso unübersichtlicher wird das Ganze.

Achja, der Theta Join entspricht nicht dem Left Join!

SELECT a.name, b.txt
FROM newtable a
RIGHT JOIN notizen b ON ( b.id = a.id );
= 1: 1 wie Theta


Was weiß ich. Bei dieser kryptischen Benennung ("newtable", wtf?) wollte ich nicht unnötig meine Gehirnzellen anstrengen.

Tabellen- und Spaltenname sollten immer so gewählt werden, dann man möglichst am ersten Blick versteht, welche Daten sie enthalten. Irgendwelche kryptischen Abkürzungen sind eigentlich nur ein Hindernis.



Antworten PM Alle Chronologisch Zum Vorgänger
 
Melden nicht möglich
.........  Re(9): SQL Frage  (thE am 03.11.2011, 11:21:38)
..........  Re(10): SQL Frage  (hellbringer am 03.11.2011, 11:36:08)
...........  Re(11): SQL Frage  (thE am 03.11.2011, 12:53:32)
............  Re(12): SQL Frage  (hellbringer am 03.11.2011, 12:58:41)
.............  Re(13): SQL Frage  (thE am 03.11.2011, 13:07:09)
..............  Re(14): SQL Frage  (hellbringer am 03.11.2011, 13:09:35)
...............  Re(15): SQL Frage  (thE am 03.11.2011, 13:13:39)
................  Re(16): SQL Frage  (hellbringer am 03.11.2011, 13:18:09)
.................  Re(17): SQL Frage  (thE am 03.11.2011, 13:20:36)
..................  Re(18): SQL Frage  (hellbringer am 03.11.2011, 13:23:26)
...................  Re(19): SQL Frage  (thE am 03.11.2011, 13:30:55)
....  Re(4): SQL Frage  (-Transformer2K- am 02.11.2011, 17:25:15)
.....  Re(5): SQL Frage  (thE am 03.11.2011, 09:36:52)
......  Re(6): SQL Frage  (-Transformer2K- am 03.11.2011, 10:56:18)
.......  Re(7): SQL Frage  (thE am 03.11.2011, 11:22:30)
........  Re(8): SQL Frage  (-Transformer2K- am 03.11.2011, 11:50:48)
.........  Re(9): SQL Frage  (thE am 03.11.2011, 13:01:18)
..........  Re(10): SQL Frage  (-Transformer2K- am 03.11.2011, 13:18:15)
...........  Re(11): SQL Frage  (thE am 03.11.2011, 13:21:55)
............  Re(12): SQL Frage  (-Transformer2K- am 03.11.2011, 13:50:54)
.............  Re(13): SQL Frage  (thE am 03.11.2011, 14:16:06)
..............  Re(14): SQL Frage  (-Transformer2K- am 03.11.2011, 14:24:21)
...............  Re(15): SQL Frage  (thE am 03.11.2011, 14:29:03)
................  Re(16): SQL Frage  (-Transformer2K- am 03.11.2011, 14:37:53)
.................  Re(17): SQL Frage  (thE am 03.11.2011, 14:45:53)
..................  Re(18): SQL Frage  (-Transformer2K- am 03.11.2011, 15:34:31)
...................  Re(19): SQL Frage  (thE am 03.11.2011, 15:46:00)
....................  Re(20): SQL Frage  (-Transformer2K- am 03.11.2011, 15:57:17)
.....................  Re(21): SQL Frage  (thE am 03.11.2011, 16:02:14)
......................  Re(22): SQL Frage  (-Transformer2K- am 03.11.2011, 16:03:59)
.......................  Re(23): SQL Frage  (thE am 03.11.2011, 16:20:34)
........................  Re(24): SQL Frage  (-Transformer2K- am 03.11.2011, 18:18:41)
.....................  Re(21): SQL Frage  (Infosauger am 07.11.2011, 11:18:08)
...  Re(3): SQL Frage  (Infosauger am 07.11.2011, 11:18:58)
....  Re(4): SQL Frage  (hellbringer am 07.11.2011, 11:29:04)
.....  Re(5): SQL Frage  (Infosauger am 07.11.2011, 11:39:24)
......  Re(6): SQL Frage  (hellbringer am 07.11.2011, 11:46:12)
.......  Re(7): SQL Frage  (Infosauger am 07.11.2011, 11:50:28)
........  Re(8): SQL Frage  (hellbringer am 07.11.2011, 12:08:39)
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung