菜鸟求教
<P>有两个表A,B 字段完全相同 如<BR>code,name,qty</P><P>其中A表中的数据包含B表里面的所有数据. 但B表中不一定有A表的所有数据(部分没有),现在要求的是A表中有但B表中没有的那部分数据</P>
<P>是不是很菜?<BR>谢谢了</P> <P>select * from A</P>
<P>where not exists(select * </P>
<P> from B</P>
<P> where A.code=B.code)</P>
<P>好象这样的吧~~测试一下。</P> <P>我测试过了,对 是这样,太谢谢你了! 谢谢!</P>
呵呵 很想学好SQL查询,但苦于这方面的书太少. <P>ehxz: 你好</P>
<P>延续上面的问题,如果A表是发货单,B表是退货单,要求出A的实际发货数(例A发货5,B退货2,那实际是发货3,怎样写语句求出实际的3本)</P>
<P>谢谢</P>
<P>++++++++++不断学习中++++++++++</P>
你这个数量是要求A不在B中的条数,还是要求A不在B的记录中某个字段值的合计呀? <P>A(发货)<BR>code nameqty<BR>123 abc 5<BR>456 aaa 4<BR>789 ccc 3</P>
<P><BR>B(退货)<BR>code nameqty<BR>123 abc 2<BR>456 aaa 3</P>
<P><BR>求实际发货数(如下表,怎么写语句得出)<BR>code nameqty<BR>123 abc 3<BR>456 aaa 1<BR>789 ccc 3(789没发生退货,所以是发货数)</P>
<P>select A.code,a.name,A.qty - isnull(B.qty,0)</P>
<P>from A,B</P>
<P>wher A.code*=b.code;</P> <P>上述可能只适用于ASE数据库</P>
<P>其他数据库请用相应的函数和标准的外连方式</P> <P>谢谢阿辉,我试试!</P> <P>我试了,不行,有错误出现.</P>
<P>我想分开两次做,没退货的先求出,用exhz的方法(已实现).</P>
<P>有退货的另外算</P>
<P>A 发货<BR>code name qty<BR>888 qqq 10</P>
<P><BR>B 退货<BR>code name qty<BR>888 qqq 5</P>
<P>求A发货-B退货的实际5本 这个语句</P>
页:
[1]
2