Hi Access Experten,
ich habe eine Abfrage, deren Ausführung ewig dauert... Sicher gibt es hier noch einen Kniff, wie Access dies schneller ausführen könnte... Hier der SQL Code:
SELECT AngebotAuftrag_Inhalte.ID_Verlag, Vertrieb.Nachname, Magazine.Magazintitel, AngebotAuftrag_Inhalte.ID_Ausgabe, AngebotAuftrag_Inhalte.Ausgabe, AngebotAuftrag_Inhalte.Angebotspreis, AngebotAuftrag.Art, Year([ET]) AS Berichtsjahr, Vertrieb.ID_Vertrieb, AngebotAuftrag.Vertragseingang, Kundenliste.Firmenname, Format(Nz(DSum("Angebotspreis","AbfrageDOMSUM","Ausgabe='" & Val([Ausgabe])-1 & "-" & Mid([Ausgabe],6) & "'" & " And Magazinname='" & [Magazintitel] & "'" & " And Vertragseingang<= format(dateadd('yyyy',-1,date()),'yyyy-mm-dd')" & "And ID_Vertrieb=" & [ID_Vertrieb]),0),"Currency") AS UmsatzVJ, Val([Ausgabe])-1 & "-" & Mid([Ausgabe],6) AS AusgabeVJ
FROM (((AngebotAuftrag_Inhalte INNER JOIN Magazine ON AngebotAuftrag_Inhalte.ID_Magazin = Magazine.ID) INNER JOIN AngebotAuftrag ON AngebotAuftrag_Inhalte.AngebotAuftrag_ID = AngebotAuftrag.ID_AngebotAuftrag) INNER JOIN Vertrieb ON AngebotAuftrag.Vertrieb_ID = Vertrieb.ID_Vertrieb) INNER JOIN Kundenliste ON AngebotAuftrag.Kunden_ID = Kundenliste.ID_Kunde
WHERE (((AngebotAuftrag_Inhalte.ID_Verlag)=1) AND ((AngebotAuftrag.Art)="Auftrag") AND ((Vertrieb.ID_Vertrieb)=GetLoginID()));
Ziel dieser Abfrage war es, den tagesgenauen Vorjahresumsatz in der Tabelle mit abzubilden. Im Bericht erscheinen seltsamerweise die berechneten DOMSUMME - Felder schneller als die normalen, nicht berechneten...
Woran liegt das?
Die Berechnung dieses Feldes scheint Reserven zu haben:
Format(Nz(DSum("Angebotspreis", "AbfrageDOMSUM", "Ausgabe='" & Val([Ausgabe]) - 1 & "-" & Mid([Ausgabe], 6) & "'" & " AND Magazinname='" & [Magazintitel] & "'" & " AND Vertragseingang<= format(dateadd('yyyy',-1,date()),'yyyy-mm-dd')" & "AND ID_Vertrieb=" & [ID_Vertrieb]), 0), "Currency") AS UmsatzVJ
- Abfrageinhalt?
- Datumsformatierung?
- Rumrechnerei an "Ausgabe"
Ansonsten: Gefilterte Felder sind indiziert?