Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

PHP MYSQL mengimpor CSV dan kemudian membandingkan dan menghapus entri yang berlebihan

Simpan saja akun kunci Anda.

Simpan setiap $key dalam array di saat Anda, dan pada akhirnya jalankan kueri yang mengatakan

DELETE FROM tabel WHERE key NOT IN (listofcommaseparatedkeysgoeshere)
$arrayThatYouNeedToTest = array();
$handle = fopen($file,"r");
fgetcsv($handle, 1000, ",");//skip first row since they are headers
while(($fileop = fgetcsv($handle, 1000, ",")) !== false) //read line by line into $fileop
{
  //read array values into vars
  $item1 = $fileop[0];
  $item2 = $fileop[1];
  $key = $fileop[2];
  // and a couple more

  // now INSERT / UPDATE data in MySQL table
  $sql = mysql_query("INSERT INTO table (item1,item2,key) 
    VALUES ('$item1','$item2','$key') 
    ON DUPLICATE KEY UPDATE item1='$item1',item2='$item2'");

   $arrayThatYouNeedToTest[] = $key;    

}

$stringThatYouNeedToInspect = implode(",",$arrayThatYouNeedToTest);
$queryYouREALLYneedToCheckFirst = "DELETE FROM tabel WHERE key NOT IN  (".$stringThatYouNeedToInspect.")";

//$result = mysql_query($queryYouREALLYneedToCheckFirst);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. kueri dinamis mysql dalam prosedur tersimpan

  2. Bagaimana cara menghapus secara otomatis setiap x menit?

  3. Mengekspor hasil kueri MySQL ke excel?

  4. Gabungkan beberapa bidang menjadi satu dengan SQL

  5. Menangani transaksi di lingkungan multithreaded