0

テーブルのExcelシートとExcelシートの多くの列を介して何千ものデータをアップロードしたいと考えています。

すべてのデータが重複値を削除することを確認したいのですが、誰もインポートされたデータを削除できず、重複を削除することはできません。また、テーブルのすべてのデータをチェックします。

ID  NAME  GIVENNAME  SURNAME  ADDRESS AREA  ZONE  OFFICE  CITY TEHSIL STATE MOBILE ECT...
1   XXX   XXXX       XXXX     XXX     XXX   XXX   XXXX    XXX  XXX    XXX   12345  ...
2   AAA   AAAA       AAAA     AAA     AAA   AAA   AAAA    AAA  AAA    AAA   67890  ...
3   SSS   SSSS       SSSS     SSS     SSS   SSS   SSSS    SSS  SSS    SSS   12345  ...

ありがとうございました..

4

4 に答える 4

0

PHPExcel ライブラリを使用して、Excel からデータをインポートします。行を反復する for ループがあります。すべての列または一意にしたい必要な列のデータを連結し、連結された文字列のハッシュを作成します。新しい行の挿入時に、既に挿入されている行のハッシュをチェックするだけです。それ以外の場合は、現在の行を挿入してハッシュ配列を更新します。ハッシュを配列に格納します。

于 2013-09-21T07:03:37.710 に答える
0

Jugalの回答に追加するには、ハッシュを配列に保存しますが、値フィールドではなくキーフィールドに保存して、検索速度を向上させます(非常に大きなデータセットにのみ関連します)。次に、次のように行が存在するかどうかを確認します。

 if(!array_key_exists($hash, $refrenceArray)){
   //it's a duplicate
 } else{
   //it isn't a duplicate so add it to the array
   $refrenceArray[$hash] = 1;    
   //and add the value to your array which is going to the database
   $toDBArray=$rowOfData;
 }

次に、収集したすべてのデータの配列 ($toDBArray) を取得して、 バッチデータベース挿入を実行します。

于 2013-09-26T01:38:00.717 に答える