多表联接出现null值,如何赋值

小宋r 2013-07-16 02:32:16
如有三个表:订单表---订单数量,编号
生产表---生产数量,编号
库存表---库存数量,编号

select 订单表.编号,订单表.订单数量,生产表.生产数量,库存表.库存数量;
from 订单表;
left outer join "生产表" on 订单表.编号=生产表.编号
left outer join "库存表" on 订单表.编号=库存表.编号

??现在有一个问题:当生产表或库存表中无对应编号的数据时---最终显示为null
为了显示需要要将null转化为0,
在字段中加 iif(isnull(生产数量),0,生产数量) as 生产数量 得到结果为:原为null显示为0,有数据的显示为* ??????请问那里有问题怎么改???

??当联合多表生成新表时,当为null如何赋量为0,有值就按原值
sql server中 用isnull(字段,0)就可以了

??最上面的sql语句如何先对生产表汇总一下:select sum(生产数量) as 生产数量 from 生产表 group by编号 后在与订单表、库存表联接,请问该怎么写????

以上问题求解了
...全文
185 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
WWWWA 2013-07-16
  • 打赏
  • 举报
回复
一般不用视图设计器,直接用SQL语句 
小宋r 2013-07-16
  • 打赏
  • 举报
回复
引用 3 楼 WWWWA 的回复:
nvl(生产数量,000000.00) 不是 nvl(生產數量,0)
用wwwa的方法可以了,0000000.00实际是指定长度及小数位,当指定长度不够栏位溢出就会显示*,此函数vfp自带帮助没有此用法---多谢wwwa 另外一个问题: 多表联接时,有的字段来自于子查询用sql语句可以实现,在视图设计器中如何实现????? 目前我是用此方法:先对子查询建一个视图,再在多表联接添加此视图,感觉不是太好,各位有没有更好方法
WWWWA 2013-07-16
  • 打赏
  • 举报
回复
nvl(生产数量,000000.00) 不是 nvl(生產數量,0)
小宋r 2013-07-16
  • 打赏
  • 举报
回复
引用 1 楼 WWWWA 的回复:
nvl(生产数量,000000.00)
用nvl(生產數量,0) 結果是 null顯示為0 有值的顯示為* ?????
WWWWA 2013-07-16
  • 打赏
  • 举报
回复
nvl(生产数量,000000.00)

2,722

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧