照合を使用します。以下の例では、ポーランド語の照合を使用しましたが、別の照合を使用することもできます。
CI = 大文字と小文字を区別しない、AI = アクセントを区別しない、CS = 大文字と小文字を区別する、AS = アクセントを区別する
SELECT
ID,
FK1 COLLATE Polish_CI_AI,
FK2 COLLATE Polish_CI_AI,
FK3 COLLATE Polish_CI_AI,
COUNT(*) as duplicate
FROM Pilkada.dbo.Transaction
GROUP BY
ID,
FK1 COLLATE Polish_CI_AI,
FK2 COLLATE Polish_CI_AI,
FK3 COLLATE Polish_CI_AI
HAVING COUNT(*) >1
例の並べ替え
CREATE TABLE #t (
k1 varchar(10)
)
INSERT INTO #t VALUES ('Mars')
INSERT INTO #t VALUES ('mars')
INSERT INTO #t VALUES ('maRs')
INSERT INTO #t VALUES ('MARS')
SELECT *
FROM #t
WHERE k1 = 'mars'
SELECT k1 COLLATE Polish_CS_AS , COUNT(*)
FROM #t
GROUP BY
k1 COLLATE Polish_CS_AS
SELECT k1 COLLATE Polish_CI_AS , COUNT(*)
FROM #t
GROUP BY
k1 COLLATE Polish_CI_AS
DROP TABLE #t