多数の結合を持つ多数の大きなテーブル (行と列) に対するクエリがありますが、テーブルの 1 つにデータの行が重複しているため、クエリで問題が発生します。これは別の部門からの読み取り専用のリアルタイム フィードであるため、そのデータを修正することはできませんが、クエリの問題を回避しようとしています。
それを考えると、このがらくたデータを左結合として適切なクエリに追加する必要があります。データセットは次のようになります。
IDNo FirstName LastName ...
-------------------------------------------
uqx bob smith
abc john willis
ABC john willis
aBc john willis
WTF jeff bridges
sss bill doe
ere sally abby
wtf jeff bridges
...
(約 20 列、100K 行)
私の最初の本能は、約 80K 行が得られた個別を実行することでした。
SELECT DISTINCT P.IDNo
FROM people P
しかし、次のことを試みると、すべての行が返されます。
SELECT DISTINCT P.*
FROM people P
また
SELECT
DISTINCT(P.IDNo) AS IDNoUnq
,P.FirstName
,P.LastName
...etc.
FROM people P
次に、すべての列で FIRST() 集計関数を実行すると考えましたが、それも間違っているように感じます。構文的に、ここで何か間違ったことをしていますか?
更新: 注意したい: これらのレコードは、上記の ID の非キー/非インデックス フィールドに基づく重複です。ID はテキスト フィールドで、値は同じですが、問題の原因となっている他のデータとはケースが異なります。