Foxtable(狐表)用户栏目专家坐堂 → Find 条件查找的时候,如果某字段是空值,如何查询呢?


  共有2333人关注过本帖树形打印复制链接

主题:Find 条件查找的时候,如果某字段是空值,如何查询呢?

帅哥哟,离线,有人找我吗?
Hareen时代
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:103 积分:1081 威望:0 精华:0 注册:2017/11/14 13:43:00
Find 条件查找的时候,如果某字段是空值,如何查询呢?  发帖心情 Post By:2019/4/24 16:21:00 [只看该作者]

老师好:
我想用find去条件查找表里面的行,在写条件字段的时候,某些字段的值既有空值又有不是空值的情况、
最后搜索出来的结果就自动的把空值的情况没有找到。

比如现在想在A表和B表之间建立查询,A表和B表都有很多字段是:“维度1” ,“维度2”,“维度3”  ,维度字段里面有的是有数值的,有的是空值

我写代码的时候   datatbles(A).find("维度1 = ‘" & dr("维度1") & "’ and 维度2 = ‘" & dr("维度2") & "’ and 维度3 = ‘" & dr("维度3") & "’ “)

这样在查找出来的结果,只有这三个字段全部有值才能查找出来,如果某个字段没有值,就查找不出来;比如果维度1和维度2都有数值,维度3没有值,这个时候就找不到这一行了
其实遇到这种情况,要是自动能忽略维度3的空值,直接查找维度1和维度2就好了


这个有办法解决嘛?


图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/4/24 16:24:00 [只看该作者]

判断值,合成条件,如

 

Dim filter as string = "1=1"

If dr("维度1") = nothing Then

    filter &= " and 维度1 is null"

Else

    filter &= " and 维度1 = '" & dr("维度1") & "'"

End If

If dr("维度2") = nothing Then

    filter &= " and 维度2 is null"

Else

    filter &= " and 维度2 = '" & dr("维度2") & "'"

End If

 

msgbox(filter)


 回到顶部