以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]SQL表代码求助  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=97547)

--  作者:Gnvidia
--  发布时间:2017/3/14 14:29:00
--  [求助]SQL表代码求助

如图示为我的一个SQL表的 关联表 以及要显示的列

这里可以看到要显示列的信息的第二行,我用了一个统计数量的

这个SQL表主要是用来显示公司仓库库存的。

公司仓库库存数量  =   入库数量 -  备货数量

这里我用了一个ISNULL来判断当某个型号没有在备货单中时,值设为0.

预览的时候提示错误如下:

用于函数参数的个数不对 在查询表达式 \'sum([~TMPCLPinstock].qtp)-sum(ISNULL([~TMPCLPstockUp].qtp,0))\' 中。

求教各位大神,这里应该怎么写?

非常感谢
图片点击可在新窗口打开查看此主题相关图片如下:wt.jpg
图片点击可在新窗口打开查看

是我这里用的ISNULL和foxtable的ISNULL冲突了吗?

[此贴子已经被作者于2017/3/14 14:32:53编辑过]

--  作者:Gnvidia
--  发布时间:2017/3/14 15:17:00
--  
我已经把两个表的数量字段都改成了表达式列,但是ISNULL还是提示参数错误。
--  作者:Gnvidia
--  发布时间:2017/3/14 15:39:00
--  
谁能帮我看看这个是什么原因?
--  作者:有点蓝
--  发布时间:2017/3/14 16:13:00
--  
图片查询窗口选择数据源了吗
--  作者:Gnvidia
--  发布时间:2017/3/14 16:16:00
--  
@有点蓝  数据源都是内部数据源,我没有用到外部数据源
--  作者:Gnvidia
--  发布时间:2017/3/14 16:18:00
--  
现在的结果如下图:

可以看到查询出来的结果第二行数据的数量是空的

原因是因为该型号只在入库单里出现过,尚且没有备货。
图片点击可在新窗口打开查看此主题相关图片如下:jg.jpg
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2017/3/14 16:47:00
--  
你用的是左连接,当然就是这种效果啦
--  作者:Gnvidia
--  发布时间:2017/3/14 16:51:00
--  
有点蓝老师,这个没有办法让第二行的数量显示出来吗?
用内连接的话,直接就没有第二行。
用右链接的话,也不行
这样最后展示出来的公司仓库的数据就是错误的。
[此贴子已经被作者于2017/3/14 16:51:19编辑过]

--  作者:有点蓝
--  发布时间:2017/3/14 17:02:00
--  
具体上传例子看看
--  作者:有点色
--  发布时间:2017/3/14 17:08:00
--  

内部数据源,不能用isnull函数的,你要用iif才行

 

iif(sum([instock].qtp) is null, 0, sum([instock].qtp))-iif(sum([stockUp].qtp) is null, 0, sum([stockUp].qtp))