AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Access SQL performance

Ein Thema von HCB · begonnen am 31. Mär 2023 · letzter Beitrag vom 1. Apr 2023
 
peterbelow

Registriert seit: 12. Jan 2019
Ort: Hessen
727 Beiträge
 
Delphi 12 Athens
 
#3

AW: Access SQL performance

  Alt 31. Mär 2023, 11:32
Hallo, vielleicht kann und will mir jemand helfen:
Folgendes SQL script habe ich laufen (Delphi mit FireDac Access) und funktioniert einwandfrei.

Select Top 30 * from
(SELECT ABFStatKundenNr, sum(ABFStatUmsatz) as total from ABFStat WHERE ABFStatDatum > #01/01/2023#
and ABFStatKundenNr IN
(SELECT PersKtoNummer FROM sPersKto WHERE PersKtoArt = 68 )
group by ABFStatKundenNr)
order by total desc;

Hier werden die Top30 Kunden mit Kundennummer und Umsatz gelistet.
Problem: Es dauert 10 sek. bis das Ergebnis ausgewertet ist.
Frage: Könnte man das sql umschreiben damit es schneller ist? Ich habe schon einiges probiert, komme aber nicht weiter.
Naja, die Query engine muss halt den kompletten Ergebnissatz zusammensammeln und sortieren, bevor es die ersten 30 identifizieren und zurückliefern kann. Da kann man nur versuchen, die Subqueries zu beschleunigen. Hat ABFStat einen Index auf ABFStatDatum, hat sPersKto einen auf PersKtoArt? Hast Du versucht die IN-Query durch einen JOIN zu ersetzen?
Peter Below
  Mit Zitat antworten Zitat
 

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:28 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz