phpbar.de logo

Mailinglisten-Archive

[dbs] SQL-Problem

[dbs] SQL-Problem

Konstantin Rekk k.rekk at intermatix.de
Fre Jul 16 11:41:32 CEST 2004


On Thursday 15 July 2004 19:50, ANGEL Harald wrote:
> Hi Liste!
> Folgendes Problem:
> Ich hab eine Tabelle A und eine Tabelle B. In Tabelle B gibts zu jedem Wert
> von A N Einträge. Ich will jetzt eine SQL haben, die mir einen Satz aus A
> anzeigt und dazu den Satz aus Tab B mit der grössten AutowertID. vielleicht
> wirds als Beispiel deutlich:
>
> SELECT A.id, A.irgendeinfeld, B.id, B.textfeld FROM A LEFT JOIN B ON A.id =
> B.aid WHERE A.id=1

Schneller geht vielleicht auch (aber wegen Order nicht unbedingt):

SELECT A.id, A.irgendeinfeld, B.id, B.textfeld FROM A LEFT JOIN B ON A.id =
B.aid WHERE A.id=1 ORDER BY B.id LIMIT 1

Schneller ist vielleicht 2 Querys abzusetzen statt einer, spart den Join:

Select A.irgendeinfeld from A where A.id=1
Select B.id, B.textfeld from B where B.aid=1 order by B.id LIMIT 1

Wenn du weisst dass B.id sowieso geordnet ist oder einen clustered index 
darauf hast, brauchst du das order by nicht, wesentlich schneller.


-- 
Konstantin Rekk
Berlin
phone: +49 (0) 30 48623452
mobil: 0176 2100 6000
www.rekk.de
www.tanden-aikido.de


php::bar PHP Wiki   -   Listenarchive