sql语句求助,不知怎么写。
我现在有两张表 A表 和 B表 A表有个字段是zhanghao,mobile, B表有zhanghao,username,address, 现在A表总共有15条数据,B表有20条数据,我想把A表和B表相同字段值相等插入到第三张表里,把多余的那五条数据也插入到第三张表里,也就是相等的插入到一条数据,不相等的重新插入到一条数据,怎么弄?谢谢大家了。
------解决方案--------------------
用A、B表关联 账号相等的插入 C表 不相等的插入D 表
INSERT INTO C ( 字段1, 字段2, 字段3 ) 字段1, 字段2, 字段3 FROM A , B where A.zhanghao = B.zhanghao; INSERT INTO D ( 字段1, 字段2, 字段3 ) 字段1, 字段2, 字段3 FROM A , B where A.zhanghao != B.zhanghao; <br><font color="#e78608">------解决方案--------------------</font><br> insert into C select * from A ,B where A.zhanghao=B.zhanghao;<br><br>insert into C select * from B where zhanghao not in(select zhanghao from A); <br><font color="#e78608">------解决方案--------------------</font><br> 我意思如果A表和B表相同字段的值相等的插入一条数据到第三张表,如果不相等只把A表数据插入到第三张表里就行了。<br><br>你这要求我觉得别扭。<br>A <br> 1 mobile1<br> 2 mobile2<br> 3 mobile3<br>B<br> 1 zhang bj<br> 2 li shang<br> 4 wang ji<br><br>是不是zhanghao一样的,将A+B数据插入C ,而A中存在B不存在的只把A插入C??? <br><font color="#e78608">------解决方案--------------------</font><br> 还有 A 有 B 没有的呢?<br><br>insert into C <br> select * from A, B where A.zhanghao=B.zhanghao<br> union<br> select * from A<br> union<br> select * from B<br><br><br> <br><font color="#e78608">------解决方案--------------------</font><br>所以啊 问问题的人不把问题描述清楚 还要我们这些回答的人给他弄出来。<br>哎~~~~~ <br><font color="#e78608">------解决方案--------------------</font><br>