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

Pembaruan MySQL dengan pilih dari tabel lain

Anda tidak ingin fylker di UPDATE penyataan. Anda juga harus menggunakan join . yang tepat . Jadi penulisan ulang pertama adalah:

UPDATE companies c JOIN
       kommuner k
       ON c.forretningsadresse_kommune = k.kommuneNavn
    SET c.forretningsadresse_fylke = (SELECT f.fylkeNavn 
                                      FROM fylker f
                                      WHERE f.fylkeID = k.fylkeID
                                     );

Jika kita mengasumsikan satu kecocokan di fylker , maka ini baik-baik saja. Jika ada beberapa kecocokan, maka Anda harus memilih salah satu. Cara sederhananya adalah:

UPDATE companies c JOIN
       kommuner k
       ON c.forretningsadresse_kommune = k.kommuneNavn
    SET c.forretningsadresse_fylke = (SELECT f.fylkeNavn 
                                      FROM fylker f
                                      WHERE f.fylkeID = k.fylkeID
                                      LIMIT 1
                                     );

Catatan:Ini akan memperbarui semua perusahaan yang memiliki "kommuner" yang cocok. Jika tidak ada "fylker" yang cocok, nilainya akan ditetapkan ke NULL . Saya yakin ini adalah maksud dari pertanyaan Anda.

Juga, alias tabel membuat kueri lebih mudah untuk ditulis dan dibaca.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Query untuk menemukan jumlah teman bersama yang diberikan tabel orang, pasangan teman

  2. Tampilkan transaksi terbuka di MySQL

  3. Memasukkan daftar yang menyimpan banyak nilai di MySQL menggunakan pymysql

  4. Simpan Aksen di Database MySQL

  5. Plugin Validator jQuery - periksa Nama Pengguna/Email yang ada di database mysql