0
MS Accessデータベースファイルの重複する行を簡単に削除する方法が必要です。C#のMS Accessデータベースファイルの重複行を削除します
例:
[realtimedata] SecName | SecSym | Number ---------+--------+-------- Mike | 123 | 245 Mike | 123 | 245
MS Accessデータベースファイルの重複する行を簡単に削除する方法が必要です。C#のMS Accessデータベースファイルの重複行を削除します
例:
[realtimedata] SecName | SecSym | Number ---------+--------+-------- Mike | 123 | 245 Mike | 123 | 245
1)テーブルの一意の識別子列(複数可)に加えて、あなたが重複する行を識別するために使用している列を選択し、そのデータテーブルまたはレコードセットを開きます。 select文には重複している列のorder by句ソートが含まれていなければなりません。あなたの例で:ORDER BY SecName, SecSym, Number
2)レコードをループして、重複行を識別する列の値を読み取ります。
3)重複する行がある場合、それらの列によって結果がソートされているため、それらは互いに隣接します。したがって、前の行と同じ値を持つ行があれば、重複していて削除する必要があります。
擬似コードスニペット:
string prevSecName = null;
int prevSecSym = 0;
int prevNumber = 0;
const int idIndex = 0;
const int nameIndex = 1;
const int symIndex = 2;
const int numberIndex = 3;
var idsToDelete = new List<SomeType>();
foreach (var row in rows)
{
if (prevSecName != null && prevSecName = row[nameIndex] && prevSecSym = row[symIndex] && prevNumber = row[numberIndex])
idsToDelete.Add(row[idIndex]);
prevSecName = row[nameIndex];
prevSecSym = row[symIndex];
prevNumber = row[numberIndex];
}
これは重く、あなたが「重複」と考えるものに依存するであろう - あなたは、重複するデータ項目の一例を示すことができますか? – bobbymcr
それは行をdublicateですか?または他の何か ' –
テーブル/データが現在どのように表示されているかの例を示し、削除する行を表示できますか? –