Einzelnen Beitrag anzeigen

tdeck

Registriert seit: 26. Jun 2006
Ort: Obertshausen
67 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Mit JOIN suchen über merhere Tabellen...klappt nicht

  Alt 3. Jan 2010, 22:49
Hallo Leute!
Vielen Dank für die Hilfe (immer wieder gute in der Delphi-Praxis )

Das mit dem "LEFT JOIN" war das ganze Problem, was mir aber jetzt bei größeren Datenmengen auffällt, das
der Zugriff so einfach zu langsam ist und ich habe noch nichtmal alle Suchfelder der virtuellen Tabelle drinnen, die ich brauche.

SQL-Code:
SELECT *
from
dbo.VORGANG v
join dbo.VORGADR va on va.ROWVORGANG = v.ROWVORGANG
left join dbo.PROJEKTORDNER po on (po.OBJEKTNR = v.ROWVORGANG AND po.OBJEKTKZ = 'VOR')
left join dbo.PROJEKTE p on p.ROWPROJEKT = po.ROWPROJEKT

WHERE v.BELEGART = 'TR'
AND (
UPPER(v.VORGANGNR) LIKE '%'+UPPER('FR')+'%'
OR UPPER(v.BETREFF) LIKE '%'+UPPER('FR')+'%'
OR UPPER(v.FREMDEAUFTNR) LIKE '%'+UPPER('FR')+'%'
OR UPPER(v.FREMDEKOMNR) LIKE '%'+UPPER('FR')+'%'
)
Meine Standard-Suchfunktion (über Delphi) reagiert auf jeden Tastendruck und soll dann gleich das ganze Ergebnis liefern, bei einer Tabelle war das bis jetzt kein Problem, aber jetzt braucht er immer alleine schon einen Moment die JOIN's zu machen.

Frage:
Muss ich die JOIN's überhaubt jedesmal bei einer Suchtextänderung ausführen, oder reicht das ganze einmal und danach nur den Teil ab dem "WHERE...". Gibt es evtl. eine einfache SQL-Abfrage, die prüft ob die Virtuelle-Tabelle noch aktuell und vorhanden ist, und wenn ja diesen Teil einfach überspringt?

Gruß
Thorsten
Thorsten
  Mit Zitat antworten Zitat