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

Cara Menambahkan kolom terakhir di tabel mysql

Dengan kode yang Anda poskan, inilah cara saya menanganinya.

Pertama, saya akan membuat array pencarian asosiatif yang kuncinya adalah nama kolom dan nilainya adalah nilai titik yang sesuai; akan terlihat seperti ini:

$pointVals = array('email1' => 2, 'email2' => 5, 'email3' => 2, ... );

Anda dapat menghasilkan array ini sesuka Anda; Saya mungkin akan membacanya dari tabel pencarian di database. Perhatikan bahwa larik ini hanya berisi kolom yang perhitungannya relevan.

Selanjutnya, saya akan memasukkan kode berikut di dalam while lingkaran. $row adalah larik rekaman yang dikembalikan oleh panggilan Anda ke mysql_fetch_array() .

while ($row = mysql_fetch_array($result)) {
  ... // existing code goes here
  $rowSum = 0;
  foreach($pointVals as $colName => $val)
  {
    if(isset($row[$colName]) && !empty($row[$colName]))
      $rowSum += $val;
  }
  ... // do stuff with $rowSum here
}

Karena itu, saya sangat menganjurkan Anda untuk mengonversi dari mysql driver ke mysqli atau PDO , sebagai mysql sudah usang dan telah dihapus dari PHP 7. Selain itu, saya sangat curiga bahwa kueri Anda dapat disederhanakan dan ditingkatkan, tetapi saya perlu melihat tabel dasar untuk menyarankan apa pun.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Koneksi MySQL hilang:kesalahan sistem:110

  2. Memahami Kumpulan Karakter dan Kumpulan di MySQL

  3. Bagaimana cara menggunakan hashing kata sandi dengan PDO untuk membuat kode saya lebih aman?

  4. Permintaan SUM MySQL sangat lambat

  5. Indeks apa untuk meningkatkan kinerja JOIN dan GROUP BY