表A是会员表,表B是公司表
----------------------
表A的字段是:
member_id     --主键
username
password
email
----------------------
表B的字段是:
company_id   --主键
member_id    --表A的外键(会员ID)
company_name
address
connector
--------------------
我现在想把表B中的内容追加到表A中,追加的字段是
company_name
address
connector请问这样的语句如何写呢?谢谢!!!!

解决方案 »

  1.   

    這樣?Select 
    A.*,
    B.company_name,
    B.address,
    B.connector
    From
    A
    Left Join
    B
    On 
    A.member_id= B.member_id
      

  2.   

    或者Select 
    A.*,
    B.company_name,
    B.address,
    B.connector
    From
    A, B
    Where
    A.member_id= B.member_id
      

  3.   

    alter table 表A add company_name varchar(255)
    alter table 表A add address varchar(1000)
    alter table 表A add connector varchar(100)
    go
    update 表A
    set company_name=表B.company_name,
    address=表B.address,
    connector=表B.connector
    from 表A,表B
    where 表A.member_id=表B.member_id
      

  4.   

    select a.*,b.company_name,b.address,b.connector
    from A inner join B 
    on a.member_id=b.member_id
    order by a.member_id
      

  5.   

    --应该是用右连接吧
    select a.*,b.company_name,b.address,b.connector from a right join b
    on a.memeber_id=b.member_id
      

  6.   

    gahade(与君共勉)
    你是对的,谢谢了!^_^
      

  7.   

    创建新的表来取代A表
    select * into 新表 from
    (select a.*,b.company_name,b.address,b.connector
    from A left join B 
    on a.member_id=b.member_id)t
      

  8.   

    创建新的表来取代A表
    select * into 新表 from
    (select a.*,b.company_name,b.address,b.connector
    from A left join B 
    on a.member_id=b.member_id)t
    ---------------------------
    这样就不用修改表A的结构了,这个方法好
      

  9.   

    创建新的表来取代A表
    select * into 新表 from
    (select a.*,b.company_name,b.address,b.connector
    from A left join B 
    on a.member_id=b.member_id)t
    ---------------------------
    如果使用这种方法的话,现命名为其他名字,然后把表A删掉(不考虑表之间的约束),把新命名的表更名为表A,这样可以吗?
      

  10.   

    可以,如果想修改表名:1,打开企业管理器 2,选中某数据库注册 3,右键打开属性 4,打开 服务器设置 5,看到服务器行为,然后选中 允许对系统目录进行修改 6,打开查询分析器 7,写sql,
    update sysobjects set name=\'旧表名\' where name=\'新表名\'或者以临时表作为新表,然后再用'select * into...'把临时表的内容导入到新的A中
      

  11.   

    如果使用这种方法的话,现命名为其他名字,然后把表A删掉(不考虑表之间的约束),把新命名的表更名为表A,这样可以吗?
    ------
    可以--生成新表
    select * into TempTable from
    (select a.*,b.company_name,b.address,b.connector
    from A left join B 
    on a.member_id=b.member_id)t
    --刪除A表
    Drop Table A
    --改名
    EXEC sp_rename 'TempTable', 'A'
      

  12.   

    使用selet * into 表 from 新表会导致主键,索引,约束,触发器丢失.