2

データベースで手動の重複チェックを行っていますが、複雑なケースがあります。

列 A の値に基づいて重複行を確認する必要があります。ただし、この特定のケースでは、列 A の値が同じで列 E の値が異なる複数のレコードが存在する可能性があります。

ここに私の元のクエリがあります:

SELECT ColumnA, COUNT(*) TotalCount
FROM TableA
INNER JOIN TableA_1 on fID = hID
WHERE dateCreated > '2013-05-08 00:00:00'
GROUP BY ColumnA
HAVING COUNT(*) > 1
ORDER BY COUNT(*) DESC

ColumnE が異なる、または一意である ColumnA の重複を除外する必要があります。元のクエリに疑似コードを追加しました

SELECT ColumnA, COUNT(*) TotalCount
FROM TableA
INNER JOIN TableA_1 on fID = hID
WHERE dateCreated > '2013-05-08 00:00:00'
AND ColumnE is not unique
GROUP BY ColumnA
HAVING COUNT(*) > 1
ORDER BY COUNT(*) DESC

これが理にかなっていることを願っています。

4

2 に答える 2

1

以下に示すように、ColumnEをグループに追加するだけです。

    SELECT ColumnA, ColumnE, COUNT(*) TotalCount
    FROM TableA
    INNER JOIN TableA_1 on fID = hID
    WHERE dateCreated > '2013-05-08 00:00:00'
    GROUP BY ColumnA, ColumnE
    HAVING COUNT(*) > 1
    ORDER BY COUNT(*) DESC
于 2013-05-09T19:25:18.937 に答える