AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Access SQL Query optimieren?
Thema durchsuchen
Ansicht
Themen-Optionen

Access SQL Query optimieren?

Ein Thema von HCB · begonnen am 14. Jan 2024 · letzter Beitrag vom 17. Jan 2024
Antwort Antwort
HCB

Registriert seit: 12. Feb 2020
223 Beiträge
 
Delphi 12 Athens
 
#1

AW: Access SQL Query optimieren?

  Alt 16. Jan 2024, 14:10
@delphi.narium
Danke für Deine Zeit und Mühe. Ich werde das mal heute abend testen. Du hast dir einen Kasten Bier verdient.

LG Harry
  Mit Zitat antworten Zitat
HCB

Registriert seit: 12. Feb 2020
223 Beiträge
 
Delphi 12 Athens
 
#2

AW: Access SQL Query optimieren?

  Alt 16. Jan 2024, 17:04
@delphi.narium
Das mit den Views und deinem SQL Code hat sagenhaft funktioniert!! Ich lerne jetzt wieder ein wenig dazu! Vielen, vielen Dank.

Eine andere SQL Optimierung wäre wahrscheinlich auch hier möglich:

Delphi-Quellcode:
SELECT A.BestDocErfNr, A.BestDocDatum, A.BestDocLiefNr,A.BestDocKurzbez,U.BestPosAusstand,U.BestPosArtNr,U.BestPosBestNr,U.BestposName1,U.BestPosEPreis,L.ArtAltArtNr
FROM (BestDok As A inner JOIN BestPos As U
On A.BestDocID = U.BestPosDocID )
INNER JOIN sArtikel as L
      ON U.BestPosArtNr=L.ArtNr
WHERE A.BestDocOptGeliefert = false and U.BestPosAusstand > 0 and A.BestDocType = 0
and U.BestPosArtNr = :ArtNr
order by A.BestDocErfNr asc
Wie würde das hier mit den Views funktionieren?
Ich möchte dich wirklich nicht beanspruchen, eilt nicht. Vielleich wenn du wieder mal Zeit und Lust hast.

LG Harry
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.558 Beiträge
 
Delphi 7 Professional
 
#3

AW: Access SQL Query optimieren?

  Alt 16. Jan 2024, 17:38
SQL-Code:
create view v_Sinnvollername as
select
  BestDocErfNr,
  BestDocDatum,
  BestDocLiefNr,
  BestDocKurzbez,
  BestPosAusstand,
  BestPosArtNr,
  BestPosBestNr,
  BestposName1,
  BestPosEPreis,
  ArtAltArtNr
from
(
  (
    select
      BestDocID,
      BestDocErfNr,
      BestDocDatum,
      BestDocLiefNr,
      BestDocKurzbez
    from BestDok
    where BestDocOptGeliefert = false
      and BestDocType = 0
  ) A
  inner join
  (
    select
      BestPosArtNr,
      BestPosAusstand,
      BestPosArtNr,
      BestPosBestNr,
      BestposName1,
      BestPosEPreis
    from BestPos
    where BestPosAusstand > 0
  ) U on A.BestDocID = U.BestPosDocID
  inner join
  (
    select
      ArtNr,
      ArtAltArtNr
    from sArtikel
  ) L on U.BestPosArtNr = L.ArtNr
)
Im SQL dann "nur noch"

select * from v_Sinnvollername where BestPosArtNr = :ArtNr order by BestDocErfNr asc

Hoffentlich hab' ich da jetzt keine gravierenden Fehler eingebaut.
  Mit Zitat antworten Zitat
HCB

Registriert seit: 12. Feb 2020
223 Beiträge
 
Delphi 12 Athens
 
#4

AW: Access SQL Query optimieren?

  Alt 16. Jan 2024, 19:16
Bin am Testen, es kommt unter Delphi folgene Fehlermeldung:

Syntaxfehler (fehlender Operator) in Abfrageausdruck
A.BestDocId = U.BestPosDocId
innerjoin
(
select
ArtNr,
ArtAltArtNr
from sArtikel
) L on U.BestPosArtNr = L.ArtNr
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.558 Beiträge
 
Delphi 7 Professional
 
#5

AW: Access SQL Query optimieren?

  Alt 16. Jan 2024, 19:40
Bin am Testen, es kommt unter Delphi folgene Fehlermeldung:

Syntaxfehler (fehlender Operator) in Abfrageausdruck
A.BestDocId = U.BestPosDocId
innerjoin
(
select
ArtNr,
ArtAltArtNr
from sArtikel
) L on U.BestPosArtNr = L.ArtNr
Schwierig ohne das vollständige SQL (und ohne DB mit der entsprechenden Tabellenstruktur zum Testen).

Wenn das innerjoin kein Copy&Paste-Fehler beim Einfügen hier im Forum ist, dann fehlt da ein Leerzeichen: inner join

Ansonsten sehe ich hier momentan keine Chance, da irgendwie sinnvoll weiterhelfen zu können.
  Mit Zitat antworten Zitat
HCB

Registriert seit: 12. Feb 2020
223 Beiträge
 
Delphi 12 Athens
 
#6

AW: Access SQL Query optimieren?

  Alt 17. Jan 2024, 16:54
Ok, vielen Dank.
Inner join ist schon richtig ohne Leerzeichen beim Query eingetragen.
Muss ich halt mal sehen wie ich das ganze gebacken bekomme. Irgendwie gibts immer andere Lösungsansätze. Try and Error

LG Harry
  Mit Zitat antworten Zitat
Antwort Antwort


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 00:18 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