phpbar.de logo

Mailinglisten-Archive

Joins / Performance
Archiv Mailingliste mysql-de

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Joins / Performance



Hallo,

auf http://www.problemloeser.de/d1.htm habe ich einen artikel
gefunden, wie joins optimiert werden können.

Überraschender weise ist das ergebnis mit mySQL jedoch anders, als
(für andere DB's?) vorhergesagt.

Ziel: Ich will die personenanzahl aller orte, in denen die personen
keiner niederlassung angehören. Dazu habe ich folgendes statement:

select distinct(a.ort), count(a.id) as anzahl 
  from person a, 
       rel_niederlassung_person b 
 where a.id != b.person_id 
 group by ort 
 order by ort

Tabelle person enthält ca. 4000 records. Ergebnis: 0.60 sekunden
execution time

Wenn ich hingegen (wie auf obiger page vorgeschlagen)
   select distinct(a.ort), count(a.id) as anzahl 
     from person a 
left join rel_niederlassung_person b 
       on a.id != b.person_id 
    group by ort 
    order by ort 
benutze, komme ich auf 0.88 sek. execution time.

Ist nun die info der obigen page falsch oder gibt es andere gründe,
warum das zweite statement langsamer ist?

ciao

amalesh
-- 
CaupoShop (OS)  : http://www.caupo.de/shop_download.php3
Keep Agent alive: http://www.living-source.com/agent/
LS at CCC-Camp  : http://www.living-source.com/cccdiary/
Contact         : ak_(at)_living-source.com ~ icq:963380

---
*** Abmelden von dieser Mailingliste funktioniert per E-Mail
*** an mysql-de-request_(at)_lists.4t2.com mit Betreff/Subject: unsubscribe


Home | Main Index | Thread Index

php::bar PHP Wiki   -   Listenarchive