J'essaie d'obtenir le temps d'exécution de la requête, mais je veux également masquer la sortie de la requête. Je veux juste le temps écoulé - pas de sortie.
Exemple
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]
Pour le moment, j'obtiens une sortie de requête et au fond ma durée, qui est la seule chose que je veux en ce qui concerne la sortie. Je n'ai pas pu le faire et je me demandais si quelqu'un d'autre avait rencontré des problèmes similaires? C'est quelque chose que je veux faire dans T-SQL, pas dans Management Studio ou quelque chose comme ça.
J'essaie de surveiller le temps qu'il faut pour exécuter l'instruction select et faire rapport à un serveur. J'ai un serveur de surveillance externe qui l'exécutera toutes les minutes et récupérera le temps (durée qu'il a fallu) que j'utiliserai au fil du temps pour la tendance / la référence. Comme la requête actuelle crache les résultats sélectionnés et ma durée, elle l'incline et mon serveur de surveillance est confus. Je voulais juste la colonne durée. Je le ferai également pour les inserts, ce qui sera simple car il n'aura pas besoin d'effectuer une sélection.
J'essaie de le faire uniquement en T-SQL . Je ne veux pas utiliser de DMV car je veux obtenir le temps qu'il faut (instantané) lorsque j'exécute une requête et vérifier si cela change au fil du temps lorsque le serveur passe par les différents niveaux de charge car cela me donnera une bonne idée quant à savoir si le temps d'exécution des requêtes change.
la source