Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL - Wie kann ich eine Tabelle mit Werten aus einer anderen Tabelle aktualisieren?

Wir brauchen Details darüber, was nicht funktioniert, aber ich denke, Sie müssen nur Folgendes verwenden:

UPDATE TablePeople 
   SET missingdate = (SELECT MAX(te.replacementDate)
                        FROM TABLEEVENT te
                       WHERE te.people_id = TablePeople.id)   
 WHERE missingdate IS NULL

Notizen

  • MAX wird verwendet, um das letzte Ersetzungsdatum zurückzugeben, aus Angst vor dem Risiko, dass Sie mehrere Werte von der Unterabfrage erhalten
  • Wenn es keinen unterstützenden Datensatz in TABLEEVENT gibt, gibt es null zurück, also gibt es keine Änderung