将两个表中的值插入到新表中

时间:2015-04-19 16:33:15

标签: mysql

我运行了这个查询:

Insert into transaction(matric,surname,other,level,bk_id,bk_title) 
values(
   (select matric,surname,others,level from member_master),
   (select isbn,bk_title from book_master)
)

但是我收到了这个错误:

  

列数与第1行的值计数不匹配

1 个答案:

答案 0 :(得分:0)

您必须使用insert语句中提到的相同列。目前,您的insert语句提到matric,surname,other,level,bk_id,bk_title列,而select中的列则不同。试试这样:

Insert into transaction(matric,surname,other,level,bk_id,bk_title) 
values
(select m.matric,m.surname,m.others,m.level,b.isbn,b.bk_title
 from member_master m inner join book_master b on m.id = b.id) 

假设这两个表与ID列链接