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

Bagaimana cara menulis ulang kueri MySQL ini sehingga tidak menimbulkan kesalahan ini:Anda tidak dapat menentukan tabel target 'crawlLog' untuk pembaruan dalam klausa FROM?

Mengapa menggunakan Subpilih? INSERT INTO ... SELECT ada:

INSERT INTO crawlLog (companyId, timeStartCrawling)
SELECT companies.id, NOW()
FROM companies
LEFT OUTER JOIN crawlLog
ON companies.id = crawlLog.companyId
WHERE crawlLog.companyId IS NULL
LIMIT 1

Dan dengan cara itu seharusnya tidak mengeluh tentang penggunaan tabel baik di bagian INSERT dan SELECT



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kunci Utama MySQL

  2. Bagaimana jika saya menghapus ibdata1 di mysql (LINUX)

  3. Peringatan:join() [function.join]:Argumen tidak valid yang diteruskan dalam C

  4. Mengapa id auto_increment tidak bertambah satu per satu, bagaimana cara mengaturnya?

  5. Apa cara terbaik untuk mengurangi jumlah kueri ketika Kelas DAO memiliki metode yang menggunakan hasil yang sama?