phpMyAdmin
 sql >> Baza danych >  >> Database Tools >> phpMyAdmin

MySQL UPDATE z SUBQUERY tej samej tabeli

Musisz użyć tabeli tymczasowej, ponieważ nie możesz zaktualizować czegoś, czego używasz do wyboru. Prosty przykład:

To nie zadziała :

UPDATE mytable p1 SET p1.type= 'OFFER' WHERE p1.parent IN 
    (SELECT p2.id from mytable p2 WHERE p2.actu_id IS NOT NULL);

To wykona zadanie:

UPDATE mytable p1 SET p1.type= 'OFFER' WHERE p1.parent IN 
    (SELECT p2.id from (SELECT * FROM mytable) p2 WHERE p2.actu_id IS NOT NULL);

„from (SELECT * FROM mytable) p2” utworzy tymczasowy duplikat Twojej tabeli, na który Twoje aktualizacje nie będą miały wpływu



  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. Zmień domyślny zestaw znaków

  2. Jak włączyć widok Projektanta phpMyAdmina?

  3. po zmianie documentroot xampp nadal używa domyślnego phpmyadmina

  4. Nie można załadować witryny indeksu phpMyAdmin

  5. Użyć PHP do sformatowania wejściowego zapytania SQL jako HTML?