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

Optimalkan iterasi melalui array menggunakan loop foreach

Anda hanya perlu melakukan query MySQL yang baik.

Lihat di sini .

Anda dapat melakukan penambahan, pengurangan, dan hal-hal seperti date BETWEEN x AND Y , Anda dapat melakukan SELECT SUM() dengan GROUP BY dan seterusnya.

Apa maksud Hakan (saya kira) adalah bahwa Anda melakukannya dengan cara yang salah:Anda harus terlebih dahulu melakukan kueri yang membuat hampir semua bekerja untuk Anda. Tidak perlu mengembangkan hal rumit seperti itu.

Dan tiga saran lainnya:

  • coba hindari kata kunci dalam Php seperti $expense->Date . Ini membuat masalah penyorotan sintaks (dalam terbaik kasus, di terburuk Php tidak akan memahami kode Anda).
  • tambahkan lebih banyak komentar dalam kode Anda untuk menjelaskan apa yang Anda coba lakukan.
  • coba hindari kata kunci dalam Php DAN kueri SQL. Anda memiliki kolom bernama 'Date ' dan kolom bernama 'Type '. Ini tidak aman.

Ini hanyalah permulaan dari tampilan SQL Anda, dan hampir harus mencakup 95% dari kode Anda. Catatan:ini adalah saran:biarkan semua server database melakukan pekerjaan untuk Anda, ini dibuat untuk itu:

SELECT
    ps.Due,ps.Date,
    wt.Amount,wt.Date,
    ex.Amount,ex.Date

LEFT JOIN patient_sessions ps
    ON xxx
    WHERE ps.Type='Session'
    AND ps.Date
        BETWEEN DATE_ADD(NOW(), INTERVAL '-28' DAY)
        AND     DATE_ADD(NOW(), INTERVAL 1 DAY)
LEFT JOIN work_times wt
    ON xxx
LEFT JOIN expenses ex
    ON xxx
    WHERE ex.Client='Psychotherapy'


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL - dua rata-rata tertimbang dependen dalam satu kueri

  2. Hitung usia berdasarkan tanggal lahir

  3. Kueri mengembalikan terlalu sedikit baris

  4. tidak dapat mengakses mysql dari baris perintah mac

  5. Apakah ada cara untuk mencocokkan IP dengan IP+CIDR ​​langsung dari kueri SELECT?