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

MySQL INSERT INTO table SELECT FROM another_table, di dalam PROSEDUR

Jika memungkinkan, hindari menggunakan CURSORs . SQL dirancang untuk melakukan banyak hal, bukan satu baris dalam satu waktu.

Pelajari konstruksi seperti

INSERT INTO ... SELECT ...;

CREATE TABLE ... SELECT ...;

Misalnya, pods_cursor mungkin bisa dihilangkan melalui:

INSERT INTO tblResultsErrors
        (POD, QtyMeasured)
    SELECT els.LocationCode, els.Quantity 
        FROM EnergyLocation el 
        RIGHT JOIN EnergyLocationSeries els
          ON els.LocationCode = el.Code2 OR els.LocationCode = el.Codep 
        LEFT JOIN EnergyContract ec
          on ec.LocationId = el.Id 
        WHERE el.Code2 IS NULL; 

(Aduh. Mencampur KANAN dan KIRI membuat kepalaku berputar seperti burung hantu.)

Menggunakan OR di ON terdengar sangat tidak efisien. Apa maksudnya?




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kesalahan Startup MySQL - Elemen root hilang

  2. Menyortir kueri gabungan di MySQL

  3. Kesalahan:mysqlnd tidak dapat terhubung ke MySQL 4.1+ menggunakan otentikasi lama yang tidak aman

  4. bagaimana mysql memperbarui tabel mandiri bekerja

  5. Bagaimana saya bisa menggabungkan set hasil di MySQL?