0

情况是这样的:我运行一个查询,它在一个数组中给我一行或多行。

喜欢:

SET db = PASSTHRU('SELECT GUID,CONTROLNBR FROM TRANSACTION WHERE GUID > ? AND CONTROLNBR > ?' values(maxGuid,maxControlNbr);

这很好,但我想验证以下内容:

任何具有重复 CONTROLNBR 的结果都必须具有相同的 GUID

所以如果我的结果集是这样的:

   CONTROLNBR | GUID
   --------------------
      5       | 123abc
      5       | 123abc

这是完全有效的,但是我需要返回一个错误:

   CONTROLNBR | GUID
   --------------------
      5       | 123abc
      5       | abc123

我不确定在 ESQL/SQL 中测试这样的结果的最佳方法。

4

1 回答 1

0

要查找错误的重复项,您可以在 SQL 中运行此查询,但不确定它是否适用于 ESQL:

SELECT CONTROLNBR, COUNT(DISTINCT GUID) as CountGUID
FROM myTable 
GROUP BY CONTROLNBR
HAVIGNG COUNT(DISTINCT GUID) > 1
于 2015-08-04T13:20:50.610 回答