Antwort
 
Themen-Optionen Thema durchsuchen
Alt 29.05.2006, 20:57 Nach oben    #1
Erfahrener Benutzer
 
Registriert seit: 30.10.2005
Beiträge: 279
Standard left join vs from table1, table2

Hallo ist mir irgendwie grade gekommen und ich hab es mal bei meiner datenbank ausprobiert. Um was für Daten es geht ist ja egal, jedenfalls werden infos aus 2 (auch 3) Tabellen gebraucht und derzeit läuft das so:
Code:
SELECT title, release_eur from sz_games_infos LEFT JOIN sz_games_index ON sz_games_index.id = gameid
Allerdings bekomme ich das auch so hin:
Code:
SELECT info.title, game.release_eur from sz_games_infos AS info, sz_games_index as game WHERE game.id = info.gameid
Was sagt ihr dazu? Perfomance mäßig, etc.
ex³ ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.05.2006, 21:24 Nach oben    #2
Benutzer
 
Registriert seit: 31.12.2005
Beiträge: 90
Standard

also erstmal:ein join per where != left join.wenn es um die ergebnismenge geht, dann gilt:where join = join.also einfach "left join" durch join im 1. query ersetzten.die performance ist bei der 1. variante deutlich höher. vor allem bei viel daten.lesen: http://www.little-idiot.de/mysql/mysql-118.html :
Zitat:
Der Unterschied liegt in der Laufzeit. Im ersten Beispiel wird zuerst das kartesische Produkt aus beiden Tabellen gebildet (jede Zeile aus Tabelle1 wird mit jeder Zeile aus Tabelle2 verknüpft), und wenn beide Tabellen nur jeweils 100 Zeilen enthalten, sind das schon 10.000 Zeilen in der temporären Zwischentabelle. Erst dann werden die Zeilen gelöscht, die nicht die WHERE-Bedingung erfüllen. Im zweiten Fall wird zuerst die Bedingung im ON-Teil geprüft und nur solche Zeilen in die Zwischentabelle übernommen, bei denen die Bedingung erfüllt ist. In dem Beispiel mit den je 100 Zeilen pro Tabelle sind das wahrscheinlich nicht mehr als 100 Zeilen. Das ist ein Faktor von 10 !
björn ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


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

Erweiterte Suche

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 aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Ladezeiten ? CIX88 Plauderecke 39 07.11.2006 23:02
Problem mit zu vielen MySQL-Querys / Grundkonzeption Chr!s PHP-Programmierung 13 27.08.2006 16:59
Your most abnormal Query Guradia Datenbanken 21 19.04.2006 00:15
mit LEFT OUTER JOIN mehr als 2 Tabellen verknüpfen ? Alpha Centauri Datenbanken 4 06.04.2006 19:00


Alle Zeitangaben in WEZ +2. Es ist jetzt 07:04 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

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