以文本方式查看主题

-  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=172901)

--  作者:xxfoxtable
--  发布时间:2021/11/6 12:12:00
--  请教sql语句
s  elect 序号,客户序号,日期,客户号,唛头,订单号,路线,运输模式,品名,件数,总体积,重量,FCL,成本计算方式,单位成本,运费,报关费,拖车费,其他杂费1,其他杂费2,其他杂费3,其他杂费4,其他杂费5,总成本,单位报价,报价运费,报价报关费,报价拖车费,报价其他杂费1,报价其他杂费2,报价其他杂费3,总报价,总报价-总成本 as 利润,备注,结账,操作员 from {业务明细} 
 where 序号 not in (s e  lect 业务单据序号 from {供应商往来} where 是否付款=\'否\') and 结账=\'已结\' Order by 日期  desc
请教这个查不到数据的原因,正确应该怎么写?
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:kcgl.rar


[此贴子已经被作者于2021/11/6 12:16:15编辑过]

--  作者:有点蓝
--  发布时间:2021/11/6 13:45:00
--  
数据库有密码无法打开

查不到就是没有符合条件的数据,减少条件逐个测试

select * from 业务明细  where 结账=\'已结\'
select 业务单据序号 from {供应商往来} where 是否付款=\'否\' --业务明细是否有不存在业务单据序号的序号



--  作者:xxfoxtable
--  发布时间:2021/11/6 14:31:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:kcgl.rar

去掉密码了,老师帮助再看一下,应该怎么写?

--  作者:有点蓝
--  发布时间:2021/11/6 14:53:00
--  
如果是没有符合条件的数据就要改条件,或者检查数据是否有问题。

{业务明细}结账=\'已结\'的所有数据都在【{供应商往来} where 是否付款=\'否\'】的结果里,所以查询没有结果是正常的。sql本身没有任何问题,考虑自己的处理逻辑是否有问题
--  作者:xxfoxtable
--  发布时间:2021/11/6 14:56:00
--  
我的逻辑是业务明细中的序号 不能在 (序号 not in (s e  lect 业务单据序号 from {供应商往来} where 是否付款=\'否\'))这里有,同时,条件是已结,我的想法逻辑和语句哪里有问题呢?想不明白了

not in 不是都不在的意思吗?
[此贴子已经被作者于2021/11/6 14:57:05编辑过]

--  作者:有点蓝
--  发布时间:2021/11/6 14:58:00
--  
现在的结果是【条件是已结】的数据全部都在 (序号 not in (s e  lect 业务单据序号 from {供应商往来} where 是否付款=\'否\'))这里有,不存在没有的。如果确实应该有这种数据,那么是以前录入的数据就有问题
--  作者:xxfoxtable
--  发布时间:2021/11/6 15:01:00
--  
序号 都不能在这里 (s e  lect 业务单据序号 from {供应商往来} where 是否付款=\'否\') 应该怎么写代码? 不是 not in 吗?
--  作者:有点蓝
--  发布时间:2021/11/6 15:14:00
--  
 not in。SQL本身没有任何问题,现在的问题是表格根本不存在【序号 都不能在这里 (s e  lect 业务单据序号 from {供应商往来} where 是否付款=\'否\') 】的数据
--  作者:xxfoxtable
--  发布时间:2021/11/6 15:47:00
--  
序号0000000000000009  就符合条件啊,不在 (s e  lect 业务单据序号 from {供应商往来} where 是否付款=\'否\')  这里,而且 结账=已结 啊,为啥不显示呢?
--  作者:有点蓝
--  发布时间:2021/11/6 16:02:00
--  
换种用法,使用not in不允许表格有空值

select 序号,客户序号,日期,客户号,唛头,订单号,路线,运输模式,品名,件数,总体积,重量,FCL,成本计算方式,单位成本,运费,报关费,拖车费,其他杂费1,其他杂费2,其他杂费3,其他杂费4,其他杂费5,总成本,单位报价,报价运费,报价报关费,报价拖车费,报价其他杂费1,报价其他杂费2,报价其他杂费3,总报价,总报价-总成本 as 利润,备注,结账,操作员 from 业务明细 
 where not exists (select 业务单据序号 from 供应商往来 as a where 是否付款=\'否\' and a.业务单据序号 = 业务明细.序号) and 结账=\'已结\' Order by 日期  desc