0

我想处理大量的 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 个,这对于数据库引擎优化顾问来说已经足够了。

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

等待你的建议

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

4

1 回答 1

2

我不知道编程逻辑,但我可以向您指出我使用过的一个应用程序来执行此操作。ClearTrace应用程序采用 SQL Server 跟踪并“规范化”跟踪中的所有查询。

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

在此处输入图像描述

于 2014-10-14T22:02:10.720 回答