Versuchen Sie es mit INSERT...SELECT
Erklärung
INSERT INTO student_fees(id, name, fees)
SELECT ... -- put here the SELECT STATEMENT with condition
wenn Ihre Spalte ID
wird auto incremented
, müssen Sie 1
nicht angeben andernfalls wird es Ihnen einen Fehler verursachen.
INSERT INTO student_fees(name, fees)
SELECT `name`, '200$'
FROM students -- this will select all students on the table
-- and add $200 on thier fees.
Ein weiterer Punkt ist, wenn Sie nur eine Spalte aus dem student
einfügen möchten 's-Tabelle müssen Sie die Bedingung angeben, damit Sie keinen Einschränkungsfehler erhalten (vorausgesetzt, Ihre Spalten-ID ist der Primärschlüssel )
INSERT INTO student_fees(name, fees)
SELECT `name`, '200$'
FROM students
WHERE columnName = 'blahBlah'
AKTUALISIERUNG 1
Wenn Sie Ihren Kommentar sehen, haben Sie diese Frage
INSERT INTO coupon_allotment (page_id, offer_id, coupon_code, user_id)
SELECT page_id, 4, 'ABC' -- number of columns mismatch, right?
FROM pages_discounts_association
WHERE discount_id = 4
müssen Sie entfernen die user_id
Spalte oben ODER Sie müssen hinzufügen eine ID
in Ihrer select-Anweisung, um die Anzahl der Spalten anzupassen.