insert into table_a(field_a1,field_a2,field_a3) select field_b1,field_b2,field_b3  from table_b where table_a.useid !== table_b.useid插入两个表useid不同的插入到表table_a中

解决方案 »

  1.   

     select field_b1,field_b2,field_b3  from table_b where table_a.useid !== table_b.useid;
    这个查询语句首先不等于可以写成!=或者<>,没有!==
    还有这个查询逻辑有问题,table_a和table_b的关系呢,如果只是不等值,那其他相等的id会产生很多笛卡尔积.
      

  2.   

    table_a 和 table_b 是结构相同的两个表,我想把table_a和table_b有很多一模一样的记录,想把table_b中多的记录(table_a没有的)加入到table_a中,比如 table_a 中有 
    useid字段和f ield_b1字段,field_b2字段,field_b3字段 
    useid字段的值有1,3,4,6,7,8,9table_b中有
    useid字段和f ield_b1字段,field_b2字段,field_b3字段 
    useid字段的值有1,2,3,4,5,6table_b中有的而table_a中没有,取出useid= 2  和 5  的记录
    把这个记录的f ield_b1字段,field_b2字段,field_b3的值)加入到。table_a插入中的新记录(f ield_b1字段,field_b2字段,field_b3)中。
      

  3.   

    insert into table_a(field_a1,field_a2,field_a3) 
    select field_b1,field_b2,field_b3  
    from table_b 
    where id not in (select id from table_a)