Ich versuche, die Ausführungszeit für Abfragen zu ermitteln, möchte aber auch die Abfrageausgabe ausblenden. Ich möchte nur die verstrichene Zeit - keine Ausgabe.
Beispiel
DECLARE @Start datetime
DECLARE @End datetime
SELECT @StartTimeWA=GETDATE()
SELECT
[id]
,[database_id]
,[proc_name]
,[exec_t] from
[DB].[dbo].[STAT]
SELECT @End=GETDATE()
SELECT DATEDIFF(MS,@Start,@End) AS [Duration]
Im Moment erhalte ich eine Abfrage-Ausgabe und im Grunde meine Dauer, was das Einzige ist, was ich will, was die Ausgabe betrifft. Ich habe das nicht geschafft und mich gefragt, ob noch jemand auf ähnliche Probleme gestoßen ist? Dies ist etwas, was ich in T-SQL tun möchte, nicht in Management Studio oder Ähnlichem.
Ich versuche zu überwachen, wie lange es dauert, die select-Anweisung auszuführen und einen Bericht an einen Server zu senden. Ich habe einen externen Monitorserver, der das jede Minute ausführt und die Zeit zurückbekommt (Dauer, die es dauerte), die ich im Laufe der Zeit zum Trend / zur Grundlinie verwenden werde. Während die aktuelle Abfrage die ausgewählten Ergebnisse und meine Dauer ausspuckt, wird sie verzerrt und mein Monitorserver wird verwirrt. Ich wollte nur die Dauer Spalte. Ich werde dies auch für Einfügungen tun, was unkompliziert ist, da keine Auswahl durchgeführt werden muss.
Ich versuche das rein in T-SQL zu machen . Ich möchte keine DMVs verwenden, da ich die benötigte Zeit (Momentaufnahme) für die Ausführung einer Abfrage abrufen und prüfen möchte, ob sich diese Zeit ändert, wenn der Server die verschiedenen Laststufen durchläuft, da dies eine gute Idee ist ob sich die Ausführungszeit der Abfrage ändert.
quelle