以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  为啥我的条件一个都查不到呢?用s e l e c t 语句就能查到  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=121505)

--  作者:xxfoxtable
--  发布时间:2018/7/7 19:44:00
--  为啥我的条件一个都查不到呢?用s e l e c t 语句就能查到
Dim fdr As DataRow = DataTables("销售").find(filter)
filter条件见图片

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看



--  作者:有点蓝
--  发布时间:2018/7/9 8:51:00
--  
数据如果没有完全加载的话,使用sqlfind

Dim fdr As DataRow = DataTables("销售").sqlfind(filter)

--  作者:xxfoxtable
--  发布时间:2018/7/10 7:51:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目.rar

明明是三条记录,为啥统计出来是四条?请老师指点一下,谢谢

--  作者:有点甜
--  发布时间:2018/7/10 9:03:00
--  

看不懂你的逻辑,改成这样,看筛选的数据为什么有问题

 

        Tables("销售").filter = filter1
msgbox(filter1)
        msgbox(DataTables("销售").SQLSelect(filter1).Count)


--  作者:xxfoxtable
--  发布时间:2018/7/10 9:18:00
--  
还是不对,数据库中品名=led 普绿    封装=0805    仓库<>\'现货\'   仓库<>\'DP1\'  仓库<>\'DP2\'  仓库<>\'DP3\'    的记录只有三条,但统计出来是的4条,找不到原因了
--  作者:有点甜
--  发布时间:2018/7/10 9:39:00
--  

改成

 

filter1 = "品名 =\'" & Sheet(n,1).Value.Replace("*", "[*]").Replace("\'", "\'\'").Replace("%", "[%]") &"\'   And 封装=\'" & Sheet(n,2).Value.replace(" ","")  &"\' And (仓库<>\'现货\' and 仓库<>\'DP1\' and 仓库<>\'DP2\' and 仓库<>\'DP3\' or 仓库 is null or 仓库=\' \')"


--  作者:xxfoxtable
--  发布时间:2018/7/10 12:55:00
--  

怎么逻辑关系还有先后吗?


--  作者:有点甜
--  发布时间:2018/7/10 14:49:00
--  
以下是引用xxfoxtable在2018/7/10 12:55:00的发言:

怎么逻辑关系还有先后吗?

 

是的,好好理解一下and 和 or,先执行and的条件,再执行or的条件的。