Foxtable(狐表)用户栏目专家坐堂 → [求助]请问怎么写代码能高效从后台获取是否有包含条件的数据?


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

主题:[求助]请问怎么写代码能高效从后台获取是否有包含条件的数据?

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


加好友 发短信
等级:六尾狐 帖子:1465 积分:10403 威望:0 精华:0 注册:2018/10/16 11:42:00
[求助]请问怎么写代码能高效从后台获取是否有包含条件的数据?  发帖心情 Post By:2019/5/11 12:34:00 [只看该作者]

[求助]请问怎么写代码能高效从后台获取是否有包含条件的数据?
我0.5秒就要判断以便,需要高效不影响正常操作。
条件:接收人=登录账户 and 接收时间为空
这是我写的代码,好像有问题。需要怎么改呢?
Dim dr As DataRow
dr = DataTables("信息表").SQLFind("接收人 = '" & _name & "' and 接收时间 is null ") 
第二种   'Dim dr As List(of DataRow)  = DataTables("信息表").SQLSelect("接收人 = '" & _name & "' and 接收时间 is null ")
If dr IsNot Nothing Then 

’执行效果
    static i = 0
    If i = 0 Then
        nfi.Icon = new Icon(ProjectPath & "\001.ico") '图标地址
        i=1
    Else
        nfi.Icon = new Icon(ProjectPath & "\002.ico") '图标地址
        i=0
    End If

End If

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


加好友 发短信
等级:超级版主 帖子:107757 积分:548124 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/5/11 13:43:00 [只看该作者]

具体有什么问题?

建议使用SQLFind。

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


加好友 发短信
等级:九尾狐 帖子:2216 积分:18231 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2019/5/22 21:11:00 [只看该作者]

试过,只要是查询条件中有is null或者 is not null,执行效率都很低。
可以试试Dim dr As List(of DataRow)  = DataTables("信息表").SQLfind("接收人 = '" & _name & "' and 接收时间 = ‘’ ") 
[此贴子已经被作者于2019/5/22 21:12:12编辑过]

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


加好友 发短信
等级:超级版主 帖子:107757 积分:548124 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/5/23 10:05:00 [只看该作者]

正常,对于数据库来说is null或者 is not null查询不会使用索引,都是全表扫描,数据越多就越慢。所以一般数据库查询尽量避免is null或者 is not null

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


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


 回到顶部