Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak przepisać to zapytanie MySQL, aby nie powodowało tego błędu:Nie możesz określić tabeli docelowej „crawlLog” do aktualizacji w klauzuli FROM?

Dlaczego warto korzystać z podselekcji? INSERT INTO ... SELECT istnieje:

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

I w ten sposób nie powinien narzekać na używanie tabeli zarówno w części INSERT, jak i 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. Kod zapalnik przełącza się na dodatkową bazę danych, jeśli podstawowa nie działa

  2. Ładowanie plików .sql z poziomu PHP

  3. Pojawia się błąd:nie można połączyć się z żadnym z określonych hostów MySQL. W aplikacji, która nie korzysta z MySQL

  4. SELECT INTO Zmienna w MySQL DECLARE powoduje błąd składni?

  5. Xampp nie uruchomi serwera MySQL na Mac OSX?