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

kueri pembaruan mysql dengan sub kueri

Masalah utamanya adalah bahwa kueri dalam tidak dapat dikaitkan dengan where . Anda klausa di bagian luar update pernyataan, karena filter where diterapkan terlebih dahulu ke tabel yang diperbarui bahkan sebelum subquery dalam dijalankan. Cara umum untuk menangani situasi seperti ini adalah pembaruan multi-tabel .

Update
  Competition as C
  inner join (
    select CompetitionId, count(*) as NumberOfTeams
    from PicksPoints as p
    where UserCompetitionID is not NULL
    group by CompetitionID
  ) as A on C.CompetitionID = A.CompetitionID
set C.NumberOfTeams = A.NumberOfTeams

Demo:http://www.sqlfiddle.com/#!2/a74f3/1



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. JSON_SET() – Masukkan atau Perbarui Nilai dalam Dokumen JSON di MySQL

  2. MySQL 5.5.9 dan kesalahan pembuatan tabel Hibernate pada TYPE

  3. Bagaimana cara mengulang hasil mysql dalam kerangka kerja bebas lemak?

  4. Bagaimana cara menemukan transaksi mana yang menyebabkan status kunci metadata tabel Menunggu?

  5. Bisakah MySQL menggunakan banyak indeks untuk satu kueri?