Foxtable(狐表)用户栏目专家坐堂 → [求助]sqlselect加上排序条件,就找不到结果了


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

主题:[求助]sqlselect加上排序条件,就找不到结果了

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


加好友 发短信
等级:九尾狐 帖子:2202 积分:18124 威望:0 精华:0 注册:2011/11/26 20:21:00
[求助]sqlselect加上排序条件,就找不到结果了  发帖心情 Post By:2022/12/21 10:26:00 [显示全部帖子]

dim r as row = tables("A").current 
Dim drs As List(Of DataRow) = DataTables("A").SQLSelect("XID= 'X' And Dis = False", "", "_SortKey")   '----如果是这一行,就会显示=0
'Dim drs As List(Of DataRow) = DataTables("A").SQLSelect("XID= 'X' And Dis = False")     ', "", "_SortKey")---如果使用这个,就能显示正确结果=2

output.show(drs.count) '-----用第一行,显示结果=0;用第二行,显示结果=2
是sqlselect不支持排序查找吗?

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


加好友 发短信
等级:九尾狐 帖子:2202 积分:18124 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2022/12/21 10:29:00 [显示全部帖子]

已经是最新版本了
图片点击可在新窗口打开查看
[此贴子已经被作者于2022/12/21 10:29:38编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2202 积分:18124 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2022/12/21 10:33:00 [显示全部帖子]

有啊图片点击可在新窗口打开查看
图片点击可在新窗口打开查看
不用sqlselect的结果就是正常的,不加排序也是正确的

用的外部数据源,但是已经把数据都load到本地了
[此贴子已经被作者于2022/12/21 10:36:13编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2202 积分:18124 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2022/12/21 10:47:00 [显示全部帖子]

我新建了一个文件,执行代码结果是一样的
图片点击可在新窗口打开查看

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


加好友 发短信
等级:九尾狐 帖子:2202 积分:18124 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2022/12/21 10:50:00 [显示全部帖子]

没有区别啊,运行还是一样的
图片点击可在新窗口打开查看

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


加好友 发短信
等级:九尾狐 帖子:2202 积分:18124 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2022/12/21 10:54:00 [显示全部帖子]

不管用什么运行结果都是错的
Dim drs As New List(Of DataRow)
drs = DataTables("A").SQLSelect("T = 'B' And Dis = False", "", "[_SortKey]")
Output.Show("加上排序计算结果=" & drs.Count)   
drs = DataTables("A").SQLSelect("T = 'B' And Dis = False", "", "[C]")
Output.Show("用[C]列做排序加上排序计算结果=" & drs.Count)
drs = DataTables("A").SQLSelect("T = 'B' And Dis = False", "", "C")
Output.Show("用C列做排序加上排序计算结果=" & drs.Count)

加上排序计算结果=0
用[C]列做排序加上排序计算结果=0
用C列做排序加上排序计算结果=0

不管是用[_SortKey],还是[C],还是C,结果都是错的
[此贴子已经被作者于2022/12/21 10:54:47编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2202 积分:18124 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2022/12/21 11:04:00 [显示全部帖子]

这也太奇怪了,原项目都没动,再新建一个项目执行以后,正常。在原项目中直接执行,也正常。

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


加好友 发短信
等级:九尾狐 帖子:2202 积分:18124 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2022/12/21 17:50:00 [显示全部帖子]

不可能用_Identify,那个没有任何业务规则。
很奇怪的是,不论是外部数据源还是内部数据源,不论是完全新建项目还是旧项目,同样的代码,有时候执行结果正常,有时候执行结果错误。
前面的截图为证(我已经升级到最新版本)

 回到顶部