MySQL テーブルと、値がタブで区切られた大きなテキスト ファイルがあります。このファイルには重複が含まれている可能性があります。これは例です:
foo \t 5
bar \t 42
etc \t 22
bar \t 50
oth \t 12
また、各ファイルには、他のファイルに応じて重複が含まれる場合があります。例えば:
abc \t 33
foo \t 10
これらのファイルをテーブルにロードして、重複をマージする (数値を合計する) 必要があります。両方のファイルをインポートすると、データベースは次のようになります。
| text | num |
+------+-----+
| foo | 15 |
| bar | 92 |
| etc | 22 |
| oth | 12 |
| abc | 33 |
これらは私がすでに知っているコマンドです:
テキスト ファイルをロードします。
LOAD DATA INFILE "file.txt" INTO TABLE `table` FIELDS TERMINATED BY '\t';
重複のある行を選択:
SELECT * FROM `table` GROUP BY `text` HAVING COUNT(*) > 1;