Tente
INSERT...SELECT
declaração INSERT INTO student_fees(id, name, fees)
SELECT ... -- put here the SELECT STATEMENT with condition
se sua coluna
ID
é auto incremented
, você não precisa especificar o 1
ou então causará um erro. 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.
Outro ponto é, se você deseja inserir apenas uma coluna do
student
's, você precisa especificar a condição, para que você não receba um erro de restrição (assumindo que o ID da sua coluna é a Chave Primária ) INSERT INTO student_fees(name, fees)
SELECT `name`, '200$'
FROM students
WHERE columnName = 'blahBlah'
ATUALIZAÇÃO 1
Ao ver seu comentário, você tem esta consulta
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
você precisa remover o
user_id
coluna acima OU você precisa adicionar um ID
em sua instrução select para corresponder ao número de colunas.