如何从SQL Server跟踪日志查询中查找唯一的SQL查询

时间:2014-10-14 13:30:18

标签: c# sql sql-server sql-server-profiler database-tuning-advisor

我想处理大量的SQL查询,只保留唯一的查询。我的意思是删除具有不同参数的相同查询,并且每个唯一查询仅留下1个签名查询。

现在我在这个问题中要问的是编程逻辑。伪代码或者是真正的.net代码。或任何免费的第三方插件/软件/框架。

这里的示例案例:

    select PathSquares from tblPathFinding where RouteId=470 
and StartingSquareId=267 and ExitSquareId=13;

    select PathSquares from tblPathFinding where RouteId=470 
and StartingSquareId=267 and ExitSquareId=1472;

正如您可以看到上面的查询,它们实际上是具有不同参数的相同查询。因此,使用逻辑,我需要消除这样的重复查询,并且只保留1对于数据库引擎优化顾问就足够了。

我应该遵循什么样的逻辑和方法来检测重复的查询?

等待你的建议ty

我将使用.net 4.5 C#WPF应用程序来解决这个问题

1 个答案:

答案 0 :(得分:2)

我不知道编程逻辑,但我可以指出我使用过的应用程序。 ClearTrace应用程序采用SQL Server跟踪并“跟踪”跟踪中的所有查询。

他们能以某种方式理解可以替换为查询中的变量的内容。

enter image description here