Foxtable(狐表)用户栏目专家坐堂 → 求助:like查找错误


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

主题:求助:like查找错误

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


加好友 发短信
等级:小狐 帖子:349 积分:4166 威望:0 精华:0 注册:2018/4/6 18:02:00
求助:like查找错误  发帖心情 Post By:2021/8/18 10:59:00 [只看该作者]

想从主表A第三列,查找并导出包涵combobox1内容的一个临时表,但导出的不是我想要的效果!

表A如下:

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

导出查询表如下图:

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

 查询命令如下:

Dim dtb As New DataTableBuilder("查询")
Dim ta2 As DataTable
 dtb.AddDef("第一列",     Gettype(String), 32)'   '班组型
 dtb.AddDef("第三列",   Gettype(String), 32)
 ta2 =  dtb.Build()
Dim Cols1() As String = {"第一列","第三列"}
Dim Cols2() As String = {"第一列","第三列"}
If e.Form.Controls("ComboBox1").value = ""
   For Each dr1 As DataRow In DataTables("表A").Select("")
       Dim dr2 As DataRow = DataTables("查询").AddNew()
       For i As Integer = 0 To Cols1.Length -1
           dr2(Cols2(i)) = dr1(Cols1(i))
       Next
   Next
ElseIf e.Form.Controls("ComboBox1").value <> ""
   For Each dr1 As DataRow In DataTables("表A").Select("第三列 Like '" & e.Form.Controls("ComboBox1").value & "' ")
       Dim dr2 As DataRow = DataTables("查询").AddNew()
       For i As Integer = 0 To Cols1.Length -1
           dr2(Cols2(i)) = dr1(Cols1(i))
       Next
   Next
End If
Tables("查询").Sort = "第一列"  '排序

Dim sl As Integer = DataTables("表A").Compute("Count(第一列)","第三列 like '" & e.Form.controls("ComboBox1").text & " ' ")
e.Form.controls("TextBox1").text = sl

 

请各位老师费心!

谢谢!

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.table

[此贴子已经被作者于2021/8/18 11:01:59编辑过]

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


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/8/18 11:07:00 [只看该作者]

参考:http://www.foxtable.com/webhelp/topics/0102.htm

Like 运算符用于比较字符串,在 Like 比较中,* 和 % 作为通配符,两者可以互换,表示任意个数的字符,通配符只能在开头或者结尾出现。例如:

[姓名] Like '%赫%'

[姓名] Like '赫%'

[姓名] Like '%赫'

分别表示姓名中包括“赫”,姓名开头是“赫”(姓赫),姓名结尾是“赫”

在字符串的中间不允许使用通配符。例如,不允许 '赫*丰',也不允许 '赫%丰'。

由于* 和 % 默认作为通配符,如果要将其作为比较内容的一部分,必须用方括号括起来,例如:

[型号] Like 'A[*]%'

表示型号以“A*”开头。

在 Like 运算符之前,可以加上Not关键词,表示不类似的意思,例如:

[姓名] Not Like '李%'

表示姓名不是以“李”开头,也就是不是姓李的。


 回到顶部