c_id c_name c_cell c_email1 张爱国 1233903003458 [email protected]
2 白志根 1393222114861 [email protected]
3 庄好 13732310385178 [email protected] 
  这个是表 companyUser的l_id username userpassword c_name
3 ababi ababi               NULL
1 gordon gordon          NULL
2                  NULL 这个是表 Userinfo的   
 
 我的SQL语句 insert into Userinfo(c_name) select c_name from companyUser where companyUser.c_id=Userinfo.l_id
  要求就是将companyUser的c_name 插入到   Userinfo 的 c_name 里面 条件是: c_id = l_id 但是我的出错了  错误是:无法绑定由多个部分组成的标识符 "Userinfo.l_id"。

解决方案 »

  1.   

    insert into
     Userinfo(c_name) 
    select
     c_name 
    from 
     companyUser, Userinfo
    where
     companyUser.c_id=Userinfo.l_id 
      

  2.   

    UPDATE Userinfo SET c_name =(select c_name from companyUser where companyUser.c_id=Userinfo.l_id )
      

  3.   

    insert into
     Userinfo(c_name) 
    select
     a.c_name 
    from 
     companyUser a, Userinfo b
    where
     a.c_id=b.l_id
      

  4.   

    用insert?
    insert into Userinfo(c_name) select c_name from companyUser where c_id in (select l_id from Userinfo)我觉得是用update吧?
    update Userinfo 
    set c_name = n.c_name
    from  Userinfo m, companyUser n
    where m.l_id = n.c_id 
      

  5.   


    恩 正解。。 update好些  两张表的数据量不一样的!
      

  6.   


    无视我 用update 参考他们的