php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > SQL / Datenbanken
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden.

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 1 Stimmen, 5,00 durchschnittlich.
  #1 (permalink)  
Alt 05-04-2005, 10:22
Blutgraf
 Newbie
Links : Onlinestatus : Blutgraf ist offline
Registriert seit: Nov 2002
Beiträge: 21
Blutgraf ist zur Zeit noch ein unbeschriebenes Blatt
Standard [MySQL 4.0] Geschwindigkeitsproblem

Hallo, ich habe folgenden SELECT Befehl nur leider dauert der bei mir ewig lang bei der der ausführung hat jemand eine Idee wie ich diesen SQL-Befehl tunen kann?


Code:
SELECT s.spot, s.x, s.y, s.width, s.height, r.part_id, r.part_nr, r.position, d.descr, p.pos,
r.amount, COUNT(*), r.is_group, t.id, t.parent, t2.field_value FROM Spots AS s
LEFT JOIN PartSpots AS p ON (s.spot = p.spot)
LEFT JOIN SpareParts AS r ON (p.pos_id = r.pos_id)
LEFT JOIN ElementDesc AS d ON r.pos_id = d.id_value AND d.tab_name = 'SpareParts AND d.language = 'GER')
LEFT JOIN PartSpots AS p2 ON (s.spot = p2.spot)
LEFT JOIN SparePartsTree AS t On (t.field_value = r.pos_id AND (t.level = 'part_group' || t.level = 'part'))
LEFT JOIN SparePartsTree AS t2 ON (t.parent = t2.id)
WHERE file_id = 45
GROUP BY s.spot, s.x, s.y, s.width, s.height, r.part_id, r.part_nr, r.position, d.descr, p.pos_id, r.amount
ORDER BY r.position, r.part_nr, r.part_id
Vorschläge, Ideen?
__________________
Unix Rulez
Mit Zitat antworten
  #2 (permalink)  
Alt 05-04-2005, 11:30
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard Re: [MySQL 4.0] Geschwindigkeitsproblem

mal mit EXPLAIN anschauen ...?
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #3 (permalink)  
Alt 05-04-2005, 11:54
Blutgraf
 Newbie
Links : Onlinestatus : Blutgraf ist offline
Registriert seit: Nov 2002
Beiträge: 21
Blutgraf ist zur Zeit noch ein unbeschriebenes Blatt
Standard

table - type - possible_keys - key - key_len - ref - rows - Extra

s - ALL - n/a - n/a - n/a - n/a - 860 - where used; Using temporary; Using filesort
p - index - n/a - PRIMARY - 16 - n/a - 894 - Using index
r - eq_ref - PRIMARY, i_pos - PRIMARY - 8 - p.pos_id - 1 - n/a
d - eq_ref - PRIMARY, i_id_value - PRIMARY - 38 - const, r.post_id, cons - 1 - n/a
p2 - index - n/a - PRIMARY - 16 - n/a - 894 - Using index
t - ref - i_value, i_level - i_value - 4 - r.pos_id - 18 - n/a
t2 -ref - i_id - i_value - 8 - t.parent - 16 - n/a


ideen?
__________________
Unix Rulez
Mit Zitat antworten
  #4 (permalink)  
Alt 05-04-2005, 12:21
Blutgraf
 Newbie
Links : Onlinestatus : Blutgraf ist offline
Registriert seit: Nov 2002
Beiträge: 21
Blutgraf ist zur Zeit noch ein unbeschriebenes Blatt
Standard

sorry fehler folgende werte sind richtig:

table - type - possible_keys - key - key_len - ref - rows - Extra

s - ALL - n/a - n/a - n/a - n/a - 136001 - where used; Using temporary; Using filesort
p - index - n/a - PRIMARY - 16 - n/a - 135368 - Using index
r - eq_ref - PRIMARY, i_pos - PRIMARY - 8 - p.pos_id - 1 - n/a
d - eq_ref - PRIMARY, i_id_value - PRIMARY - 38 - const, r.post_id, cons - 1 - n/a
p2 - index - n/a - PRIMARY - 16 - n/a - 135368 - Using index
t - ref - i_value, i_level - i_value - 4 - r.pos_id - 1- n/a
t2 -ref - i_id - i_value - 8 - t.parent - 1 - n/a
__________________
Unix Rulez
Mit Zitat antworten
  #5 (permalink)  
Alt 05-04-2005, 12:28
TBT
  Moderator
Links : Onlinestatus : TBT ist offline
Registriert seit: Sep 2002
Ort: Berlin
Beiträge: 2.787
TBT befindet sich auf einem aufstrebenden Ast
TBT eine Nachricht über ICQ schicken TBT eine Nachricht über AIM schicken TBT eine Nachricht über Yahoo! schicken
Standard

file_id ist in der Tabelle spots?
wenn ja, leg mal einen Index darauf
__________________
TBT

Die zwei wichtigsten Regeln für eine berufliche Karriere:
1. Verrate niemals alles was du weißt!


PHP 2 AllPatrizier II Browsergame
Mit Zitat antworten
  #6 (permalink)  
Alt 05-04-2005, 12:40
Blutgraf
 Newbie
Links : Onlinestatus : Blutgraf ist offline
Registriert seit: Nov 2002
Beiträge: 21
Blutgraf ist zur Zeit noch ein unbeschriebenes Blatt
Standard

gesagt getan, bringt leider keinen erfolg,
__________________
Unix Rulez
Mit Zitat antworten
  #7 (permalink)  
Alt 05-04-2005, 13:15
TBT
  Moderator
Links : Onlinestatus : TBT ist offline
Registriert seit: Sep 2002
Ort: Berlin
Beiträge: 2.787
TBT befindet sich auf einem aufstrebenden Ast
TBT eine Nachricht über ICQ schicken TBT eine Nachricht über AIM schicken TBT eine Nachricht über Yahoo! schicken
Standard

zeig mal das neue Explain
__________________
TBT

Die zwei wichtigsten Regeln für eine berufliche Karriere:
1. Verrate niemals alles was du weißt!


PHP 2 AllPatrizier II Browsergame
Mit Zitat antworten
  #8 (permalink)  
Alt 05-04-2005, 15:27
Blutgraf
 Newbie
Links : Onlinestatus : Blutgraf ist offline
Registriert seit: Nov 2002
Beiträge: 21
Blutgraf ist zur Zeit noch ein unbeschriebenes Blatt
Standard

table type possible_keys key key_len ref rows Extra
s ref i_fileid i_fileid 8 const 42 where used; Using temporary; Using filesort
p index NULL PRIMARY 16 NULL 135368 Using index
r eq_ref PRIMARY,i_pos PRIMARY 8 p.pos_id 1
d eq_ref PRIMARY,i_id_value PRIMARY 38 const,r.pos_id,const 1
p2 index NULL PRIMARY 16 NULL 135368 Using index
t ref i_value,i_level i_value 4 r.pos_id 1
t2 ref i_id i_id 8 t.parent 1
__________________
Unix Rulez
Mit Zitat antworten
  #9 (permalink)  
Alt 05-04-2005, 16:03
TBT
  Moderator
Links : Onlinestatus : TBT ist offline
Registriert seit: Sep 2002
Ort: Berlin
Beiträge: 2.787
TBT befindet sich auf einem aufstrebenden Ast
TBT eine Nachricht über ICQ schicken TBT eine Nachricht über AIM schicken TBT eine Nachricht über Yahoo! schicken
Standard

noch ein Indix auf PartSpots.spots legen
__________________
TBT

Die zwei wichtigsten Regeln für eine berufliche Karriere:
1. Verrate niemals alles was du weißt!


PHP 2 AllPatrizier II Browsergame
Mit Zitat antworten
  #10 (permalink)  
Alt 05-04-2005, 16:19
Sebastian W
 Member
Links : Onlinestatus : Sebastian W ist offline
Registriert seit: Dec 2002
Ort: München
Beiträge: 295
Sebastian W ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Folgende Indexe solltest du haben:

Spots:
spot_x _y_width_height

SpareParts:
spot

und:


part_id_part_nr_position_amount

eventuell auch noch:

position_part_nr_part_id

ElementDesc:
id_value_tab_name_language

etc.

Oder wird bei einem GROUP BY kein Index benutzt?

Nachtrag:
Verhält sich leider doch anders. Bei einem GROUP BY kann man anscheinend nur einen Index anlegen wenn man die gleichen Daten als Ausgabe haben möchte. Wenn eine weitere Spalte aus der Tabelle gebraucht wird die nicht im GROUP BY definiert ist, greift der Index nicht mehr.

In Deinem Fall sollte es also funktionieren.
__________________
Grüsse,
Sebastian


Profil Flex Freelancer
Twitter twitter.com/flashhilfe
Web Flash und Flex Community

Geändert von Sebastian W (05-04-2005 um 16:29 Uhr)
Mit Zitat antworten
  #11 (permalink)  
Alt 05-04-2005, 16:28
Blutgraf
 Newbie
Links : Onlinestatus : Blutgraf ist offline
Registriert seit: Nov 2002
Beiträge: 21
Blutgraf ist zur Zeit noch ein unbeschriebenes Blatt
Standard

index auf partspots.spots war die lösung sql-laufzeit ging von 33,03 Sek auf 0.06 sekunden runter danke alle zusammen
__________________
Unix Rulez
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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 an


PHP News

Vorteile eines flexiblen ERP Systems
Vorteile eines flexiblen ERP SystemsEin flexibles ERP System bietet in allen Unternehmensbereichen die Grundlage für eine erfolgreiche Verwaltung, Organisation und Planung aller Prozesse.

01.12.2021 | Berni

Software für alle Arten von digitalen Marktplätzen
Software für alle Arten von digitalen MarktplätzenDigitale Marktplätze sind nicht nur im B2C Geschäft seit Jahren etabliert, sondern erfreuen sich mit Kleinanzeigen-Märkten auf lokaler und regionaler Ebene auch im privaten Bereich wachsender Beliebtheit.

09.11.2021 | Berni


 

Aktuelle PHP Scripte

ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script ansehen ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script

Mit unserer Lösungen können Sie nahezu jeden B2B / B2C Marktplatz betreiben den Sie sich vorstellen können. Ganz egal ob Sie einen Automarktplatz, Immobilenportal oder einfach einen Anzeigenmarkt betreiben möchten. Mit ebiz-trader können Sie Ihre Anforder

09.11.2021 Berni | Kategorie: PHP/ Anzeigenmarkt
PHP Newsletter Script SuperWebMailer ansehen PHP Newsletter Script SuperWebMailer

Die webbasierte PHP Newsletter Software SuperWebMailer ist die optimale Lösung zur Durchführung eines erfolgreichen E-Mail-Marketings. Zur Nutzung des PHP Script-Pakets ist eine eigene Webpräsenz/Server mit PHP 5 oder neuer, MySQL 4 oder neuer und die

28.10.2021 mirko_swm | Kategorie: PHP/ Mail
Guestbook Light ansehen Guestbook Light

Das Guestbook Light (kurz: "Gblight") ist ein kinderleichtes Gästebuch in PHP. Durch den Einsatz einer SQLite Datenbank ist es einfach, leicht portabel und schnell. Aufgrund moderner Techniken erfüllt Gblight auch die neuesten Webstandards.

28.10.2021 scripthostingnet | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:39 Uhr.