Zum Inhalt springen

Ausführungsdauer Sql -> realistisch?


wilmau

Empfohlene Beiträge

Hallo,

ist es realistisch das dass ausführen des Folgenden SQL-Commandos

ca 1,5 sec dauern könnte?

Mein Chef sagt es müsste schneller gehen, habe aber keine Anung wie ich

das anstellen soll!

!Danke für jeden Tipp(Hilfe)!

Das Sql_Commando wird von einem Client zu einem Server auf der die Datenbank ist geschikt.

Datenbank: MySql4.1

im Commando sind 3 Sub-Select's

und 2 Sub-Sub-Select's

Die Datenmenge der einzelnen Tabellen variieren zurzeit um die 800

:mod:

SELECT

kalkulation_controlling.auftraege.auftragsnr,

kalkulation_controlling.auftraege.angebotsnr,

kalkulation_controlling.auftraege.auftragstyp,

kalkulation_controlling.auftraege.fk_anlagennr,

kalkulation_controlling.auftraege.auftragsstatus,

kalkulation_controlling.auftraege.kunde,

kalkulation_controlling.auftraege.bestellnrkunde,

kalkulation_controlling.auftraege.bestelldatum,

kalkulation_controlling.auftraege.bezeichnung,

kalkulation_controlling.auftraege.produktbereich,

kalkulation_controlling.auftraege.projektleiterintern,

kalkulation_controlling.auftraege.verkaeufer,

kalkulation_controlling.auftraege.techasp,

kalkulation_controlling.auftraege.kaufmasp,

kalkulation_controlling.auftraege.waehrung,

kalkulation_controlling.auftraege.eingabedatum,

kalkulation_controlling.auftraege.eingegebenvon,

sum(auftragspositionen.gepl_menge*auftragspositionen.gepl_einzelkosten) as Sollkosten_gesamt,

TempTable.Istkosten_gesamt,

sum(auftragspositionen.vkpreis) as Auftragswert,

LeistungsTable.Istkosten_Leistung,

LeistungsTable.Sollkosten_Leistung,

MaterialTable.Istkosten_Material,

MaterialTable.Sollkosten_Material

FROM auftragspositionen

RIGHT JOIN auftraege ON auftraege.auftragsnr = auftragspositionen.fk_auftragsnr

LEFT JOIN

(SELECT kalkulation_controlling.auftraege.auftragsnr, sum(kalkulation_controlling.dienstleistungserfassung.menge*kalkulation_controlling.dienstleistungserfassung.kostenproeinheit) as Istkosten_gesamt

FROM kalkulation_controlling.auftraege LEFT JOIN kalkulation_controlling.dienstleistungserfassung

ON kalkulation_controlling.auftraege.auftragsnr = kalkulation_controlling.dienstleistungserfassung.fk_auftragsnr

GROUP BY kalkulation_controlling.auftraege.auftragsnr) As TempTable ON TempTable.auftragsnr = kalkulation_controlling.auftraege.auftragsnr

LEFT JOIN

(SELECT auftraege.auftragsnr, Dienstleistungen.Sollkosten_Leistung As Sollkosten_Leistung,

sum(dienstleistungserfassung.menge*dienstleistungserfassung.kostenproeinheit) as Istkosten_Leistung

FROM auftraege LEFT JOIN dienstleistungserfassung ON auftraege.auftragsnr = dienstleistungserfassung.fk_auftragsnr

LEFT JOIN

(SELECT auftragspositionen.fk_auftragsnr, auftragspositionen.gepl_menge, auftragspositionen.gepl_einzelkosten,

sum(auftragspositionen.gepl_menge*auftragspositionen.gepl_einzelkosten) as Sollkosten_Leistung

FROM auftragspositionen

WHERE auftragspositionen.leistungskategorie = "D"

GROUP BY fk_auftragsnr) As Dienstleistungen

ON auftraege.auftragsnr = Dienstleistungen.fk_auftragsnr

GROUP BY auftraege.auftragsnr) As LeistungsTable

ON LeistungsTable.auftragsnr = auftraege.auftragsnr

LEFT JOIN

(SELECT auftraege.auftragsnr, Materialkosten.Sollkosten_Material As Sollkosten_Material,

sum(materialkostenerfassung.menge*materialkostenerfassung.ekpreis) as Istkosten_Material

FROM auftraege LEFT JOIN materialkostenerfassung ON auftraege.auftragsnr = materialkostenerfassung.fk_auftragsnr

LEFT JOIN

(SELECT auftragspositionen.fk_auftragsnr, auftragspositionen.gepl_menge, auftragspositionen.gepl_einzelkosten,

sum(auftragspositionen.gepl_menge*auftragspositionen.gepl_einzelkosten) as Sollkosten_Material

FROM auftragspositionen

WHERE auftragspositionen.leistungskategorie = "M"

GROUP BY fk_auftragsnr) As Materialkosten

ON auftraege.auftragsnr = Materialkosten.fk_auftragsnr

GROUP BY auftraege.auftragsnr) As MaterialTable

ON MaterialTable.auftragsnr = auftraege.auftragsnr

WHERE auftraege.bestelldatum LIKE "%2005"

AND auftraege.auftragsstatus LIKE "%"

GROUP BY auftraege.auftragsnr

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...