select id,typeid,controlid from A
union
select id,typeid,controlid from B假如数据为:
id    type    controlid
1      t1       c1
2      t1       c3
5      t2       c6
1      t1       c1
9      t2       c6要求把type和controlid相同行去掉``没有有主键ID(就是2个表ID可能重复)
有办法做到吗?```

解决方案 »

  1.   

    union不是会自动取出相同行的么?
    等待大虾回答!!
      

  2.   

    --union 是去掉所有行都重复了select max(id) id ,typeid,controlid from
    (
      select id,typeid,controlid from A
      union all
      select id,typeid,controlid from B
    ) t
    group by typeid,controlid
      

  3.   

    union 可以去掉所有重复的行。
    我试过,你可以放心
      

  4.   

    --union 是去掉所有行都重复了(语病)
    --union 是去掉所有列都重复的行select max(id) id ,typeid,controlid from
    (
      select id,typeid,controlid from A
      union all
      select id,typeid,controlid from B
    ) t
    group by typeid,controlid
      

  5.   

    to dawugui(潇洒老乌龟)  
    --union 是去掉所有列都重复的行
    能不能麻烦你举个例子啊