Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Query Abfrage dauert zulange (https://www.delphipraxis.net/98932-query-abfrage-dauert-zulange.html)

renekr 4. Sep 2007 11:18

Datenbank: SQL Server • Version: 2005 • Zugriff über: ADO

Query Abfrage dauert zulange
 
Hallo,

Ich habe ein kleines Problem.

Eine Abfrage mit 2 Subquerys dauert ca. 40 sec.
Diese Abfrage habe ich in einem OnClose Event einer Combobox hinterlegt.
SQL-Code:
SELECT    TOP (100) PERCENT o.Computername, o.Betriebs_System, o.Technischer_Platz, o.Platznummer, o.Beschreibung_Prozess,
o.VNC,o.Kommentar, MEPM_TOOL.dbo.Tech_PL_Proz.Doppelplatz FROM    
    System_Info.dbo.System_Info AS o LEFT OUTER JOIN MEPM_TOOL.dbo.Tech_PL_Proz ON o.Platznummer = MEPM_TOOL.dbo.Tech_PL_Proz.Platznummer
AND o.Technischer_Platz = MEPM_TOOL.dbo.Tech_PL_Proz.Technischer_Platz  
WHERE
   (
o.ID = ( SELECT MAX(ID) AS ID FROM System_Info.dbo.System_Info AS i where
(Datei_Version = (SELECT Version FROM System_Info.dbo.Open_connects WHERE (Novelluser = 'System_Info')))
AND (Computername = o.Computername)
)
)
and (o.Technischer_Platz like 'PP_0001_FINASSYFCT_03')

ORDER BY o.Platznummer, o.ID DESC
Result ca. 23 Datensätze.

Wenn ich nun die letzte Where Clausel weg lasse bekomme ich ca. 400 Datensätze aber dafür in knapp 4 sec. raus.
SQL-Code:
and (o.Technischer_Platz like 'PP_0001_FINASSYFCT_03')
kann mir da jemand einen tip pgeben. ?

danke

mkinzler 4. Sep 2007 11:23

Re: Query Abfrage dauert zulange
 
Vielleicht
SQL-Code:
and (o.Technischer_Platz = 'PP_0001_FINASSYFCT_03')
Hat das Feld einen Index?

renekr 4. Sep 2007 11:43

Re: Query Abfrage dauert zulange
 
Hi,
ne leider nicht.

war nur ein Tip fehler.

Das Original ist =

Aber ich habe rumgespielt und durch ein

SQL-Code:
and (o.Technischer_Platz like '%PP_0001_FINASSYFCT_03%')
gehts nun in 1.3 sec.

aber ich kann es mir net erklären.

Wenn ich die Eingabe abkürze gehts auch schneller aber er findet dann logischerweise nix mit einem =.

mfg


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:02 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz