Einfügen von Daten von einer Tabelle in eine andere in MySQL
Das Einfügen von Daten von einer Tabelle in eine andere ist ein häufiger Vorgang in der Datenbankverwaltung. Allerdings kann es manchmal zu Fehlern kommen, wenn die Syntax nicht korrekt ist.
Betrachten Sie die folgende Abfrage:
<code class="sql">INSERT INTO mt_magazine_subscription ( magazine_subscription_id, subscription_name, magazine_id, status ) VALUES ( (SELECT magazine_subscription_id, subscription_name, magazine_id FROM tbl_magazine_subscription ORDER BY magazine_subscription_id ASC), '1')</code>
Diese Abfrage zielt darauf ab, Daten aus der Tabelle tbl_magazine_subscription in die Tabelle mt_magazine_subscription einzufügen. Es führt jedoch zu folgendem Fehler:
#1136 - Column count doesn't match value count at row 1
Um diesen Fehler zu beheben, können wir die INSERT...SELECT-Syntax verwenden. Die aktualisierte Abfrage lautet:
<code class="sql">INSERT INTO mt_magazine_subscription ( magazine_subscription_id, subscription_name, magazine_id, status ) SELECT magazine_subscription_id, subscription_name, magazine_id, '1' FROM tbl_magazine_subscription ORDER BY magazine_subscription_id ASC</code>
In dieser überarbeiteten Abfrage geben wir den Wert der Statusspalte direkt als „1“ in der SELECT-Anweisung an und stellen so sicher, dass die Anzahl der Werte mit der Anzahl der Spalten in der übereinstimmt Zieltabelle. Durch diese Änderung kann die Dateneingabe erfolgreich durchgeführt werden.
Das obige ist der detaillierte Inhalt vonWie füge ich Daten in MySQL korrekt von einer Tabelle in eine andere ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!