Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

三个表的联合查询,第三个表的部分数据无法查询???/

平民百姓  发表于:2009-03-01 19:32:25  
复制


有三个表: 应收费表    已收费表    优惠单表

联合查询的SQL语句是这样写的


select nbid  ,sfnr,sfje as 应收费,0 as 已收费,0 as 优惠

from tblcode_yinsf where ssnf ="2008" and nbid="0000000000005";

UNION select all  nbid ,sfnr,0 as 应收费,sfje as 已收费,0  as 优惠

from tblcode_yisf where ssnf ="2008" and nbid="0000000000005";

UNION select all nbid ,sfnr,0 as 应收费,0 as 已收费, yhje as 优惠

from tblcode_sfyhd where ssnf ="2008" and nbid="0000000000005";

 

 

NBID 是内部编码   SFNR 收费内容和优惠内容  SFJE是金额  SSNF 是所属年份 

 

查询以后的结果如下:  结果中少了第三个表(优惠单表)的两条记录,代理记帐和网上认证分别有两条优惠记录,即代理记帐 50.00  和  50.00   网上认证  50.00   和   50.00  ,但是结果是两个项目都只显示出一条记录.即代理记帐 50.00  网上认证  50.00,两个项目都少了50.00

点击下载此附件

 

Top
平民百姓 发表于:2009-03-01 19:47:18

自己发语法写错了!!1



wang decheng 发表于:2009-03-02 16:54:40
我发现把union select all 改成 union all select数字就正确了,你是这样吗?点击下载此附件

总记录:2篇  页次:1/1 9 1 :