insert into A
select * from B where id>32;

解决方案 »

  1.   

    如果有重复的行的话,怎么办?它提示:Duplicate entry '3139' for key 1
      

  2.   

    既然id是自增值的,那在select时就不能提取它,而要用一个空值代替, 如果id为非自增值倒是可行
      

  3.   

    楼上说的对,
    select * from B where id>32
    这里提取的数据集包含了B的id,而A中没有字段可以存放id,所以就少了一个字段。
    所以应该修改这里
    select B.field1,B.field2,B.field3 from B where id>32
    也就是提取除了id的其他相同字段。
      

  4.   

    insert into a(field1,field,field3...) select field1,field2,field3.... from b where id>32
      

  5.   

    忘了一句field 中不要包含自动增加的这个field