Foxtable(狐表)用户栏目专家坐堂 → [求助]关键字查询


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

主题:[求助]关键字查询

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


加好友 发短信
等级:幼狐 帖子:131 积分:910 威望:0 精华:0 注册:2019/5/19 21:50:00
[求助]关键字查询  发帖心情 Post By:2019/6/4 10:18:00 [显示全部帖子]

这是希望在实现多个关键字查询,关键字是‘蛙服下裤’,‘7018T恤’这样的多个关键字,在sql语句中实现动态加载。
Dim cnm As WinForm.DropDownBox = e.Form.Controls("comname")'定义组合框
Dim str As String = cnm.text '定义组合框字符串内容
Dim ss As  String() = str.Split(",")
Dim f As  String
For Each t As  String  In ss
    f = f & " or 商品简称 like '%" & t & "%'"
Next
f=f.Remove(0,4)
Dim sql As String = "s*e*l*e*c*t 商品简称,规格名,审核时间,sum(数量) as 数量 from ThrMon where 审核时间 >= '" & Date1 & " 'and 审核时间 <= '" & Date2 & " '  And 商品简称 like '" & f & "'group by 商品简称,规格名,审核时间 "


但是总是提示错误,t变量在一个封闭块中,请问什么地方错了?

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


加好友 发短信
等级:幼狐 帖子:131 积分:910 威望:0 精华:0 注册:2019/5/19 21:50:00
  发帖心情 Post By:2019/6/4 11:30:00 [显示全部帖子]

谢谢,老师,但是我的sql语句任然无法执行,动态加载部分有问题吗?


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


加好友 发短信
等级:幼狐 帖子:131 积分:910 威望:0 精华:0 注册:2019/5/19 21:50:00
  发帖心情 Post By:2019/6/4 11:34:00 [显示全部帖子]

提示:列“货品名称”不属于表 采购系统_tb1.2.1。
但是我之前是可以正常运行的,就是加上了多关键字查询

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


加好友 发短信
等级:幼狐 帖子:131 积分:910 威望:0 精华:0 注册:2019/5/19 21:50:00
  发帖心情 Post By:2019/6/4 12:37:00 [显示全部帖子]

我看了sql语句,是单引号多出来了吗,但是我使用trim函数,无法将 ‘ 删除掉

图片点击可在新窗口打开查看此主题相关图片如下:360截图20190604123452068.jpg
图片点击可在新窗口打开查看


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


加好友 发短信
等级:幼狐 帖子:131 积分:910 威望:0 精华:0 注册:2019/5/19 21:50:00
  发帖心情 Post By:2019/6/4 13:13:00 [显示全部帖子]

Dim dt1 As WinForm.DateTimePicker = e.Form.Controls("dtp1") '定义日期框及变量
Dim dt2 As WinForm.DateTimePicker = e.Form.Controls("dtp2")
Dim Date1 As  Date = dt1.text
Dim Date2 As  Date = dt2.text
Dim d1 As new Date(2018,12,1)
Dim d2 As new Date(2019,2,28)
If  Date1 < d1 Then
    Date1 = d2 '若日期小于2018年12月1日,则将时间赋值date1
End If
If  Date1 > d2 Then
    Date1 = d2 '若日期大于2019年2月28日,则将时间赋值date2
End If


Dim cnm As WinForm.DropDownBox = e.Form.Controls("comname")'定义组合框
Dim str As String = cnm.text '定义组合框字符串内容
Dim ss As  String() = str.Split(",")
Dim f As  String
For Each tt As  String  In ss
    tt = tt.Trim(" '")
    f = f & " or 商品简称 like '%" & tt & "%'"
Next
f=f.Remove(0,14)
Dim sql As String = "s*e*l*e*c*t 商品简称,规格名,审核时间,sum(数量) as 数量 from ThrMon where 审核时间 >= '" & Date1 & " 'and 审核时间 <= '" & Date2 & " '  And  商品简称 like " & f & "group by 商品简称,规格名,审核时间 "
msgbox(sql)
Dim grp As new CrossTableBuilder("",sql,"ThrMon")'定义变量代表统计表
grp.hGroups.AddDef("商品简称","货品名称")'添加商品简称分组列
grp.hGroups.AddDef("规格名","规格名称")'添加规格名分组列
grp.VGroups.AddDef("审核时间",DateGroupEnum.Year,"{0}年")
grp.VGroups.AddDef("审核时间","{0}月")
grp.VGroups.AddDef("审核时间",DateGroupEnum.Day,"{0}日")
grp.Totals.AddDef("数量","数量")'为分组列添加统计列
grp.VerticalTotal = True
grp.HorizontalTotal = True
Tables("采购系统_tb1.2.1").DataSource = grp.BuildDataSource() '生成该统计表


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


加好友 发短信
等级:幼狐 帖子:131 积分:910 威望:0 精华:0 注册:2019/5/19 21:50:00
  发帖心情 Post By:2019/6/4 14:05:00 [显示全部帖子]

1、文本框输入值        蛙服下裤,7018T恤

2.代码不加修改

Dim cnm As WinForm.DropDownBox = e.Form.Controls("comname")'定义组合框
Dim str As String = cnm.text '定义组合框字符串内容
Dim ss As  String() = str.Split(",")
Dim f As  String
For Each tt As  String  In ss
    tt = tt.Trim(" '")
    f = f & " or 商品简称 like '%" & tt & "%'"
Next
f=f.Remove(0,14)
Dim sql As String = "s*e*l*e*c*t 商品简称,规格名,审核时间,sum(数量) as 数量 from ThrMon where 审核时间 >= '" & Date1 & " 'and 审核时间 <= '" & Date2 & " '  And  商品简称 like " & f & "group by 商品简称,规格名,审核时间 "

msgbox(sql)

可以正常运行,现在是如何将 蛙服下裤‘,’7018T恤‘ 转化为 蛙服下裤,7018T恤 问题

此主题相关图片如下:360截图20190604140142733.jpg
按此在新窗口浏览图片

此主题相关图片如下:360截图20190604140152446.jpg
按此在新窗口浏览图片



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


加好友 发短信
等级:幼狐 帖子:131 积分:910 威望:0 精华:0 注册:2019/5/19 21:50:00
  发帖心情 Post By:2019/6/4 14:12:00 [显示全部帖子]

1、文本框输入值        蛙服下裤,7018T恤

2.代码不加修改

Dim cnm As WinForm.DropDownBox = e.Form.Controls("comname")'定义组合框
Dim str As String = cnm.text '定义组合框字符串内容
Dim ss As  String() = str.Split(",")
Dim f As  String
For Each tt As  String  In ss
    tt = tt.Trim(" '")
    f = f & " or 商品简称 like '%" & tt & "%'"
Next
f=f.Remove(0,14)
Dim sql As String = "s*e*l*e*c*t 商品简称,规格名,审核时间,sum(数量) as 数量 from ThrMon where 审核时间 >= '" & Date1 & " 'and 审核时间 <= '" & Date2 & " '  And  商品简称 like " & f & "group by 商品简称,规格名,审核时间 "

msgbox(sql)

可以正常运行,现在是如何将 蛙服下裤‘,’7018T恤‘ 转化为 蛙服下裤,7018T恤 问题

此主题相关图片如下:360截图20190604140142733.jpg
按此在新窗口浏览图片

此主题相关图片如下:360截图20190604140152446.jpg
按此在新窗口浏览图片

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


加好友 发短信
等级:幼狐 帖子:131 积分:910 威望:0 精华:0 注册:2019/5/19 21:50:00
  发帖心情 Post By:2019/6/4 15:56:00 [显示全部帖子]


[此贴子已经被作者于2019/6/4 15:56:05编辑过]

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


加好友 发短信
等级:幼狐 帖子:131 积分:910 威望:0 精华:0 注册:2019/5/19 21:50:00
  发帖心情 Post By:2019/6/4 15:59:00 [显示全部帖子]

单个关键字可以执行,多个关键字报错


图片点击可在新窗口打开查看此主题相关图片如下:360截图20190604155712139.jpg
图片点击可在新窗口打开查看


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


加好友 发短信
等级:幼狐 帖子:131 积分:910 威望:0 精华:0 注册:2019/5/19 21:50:00
  发帖心情 Post By:2019/6/4 16:25:00 [显示全部帖子]

已经自己处理好了,感谢

 回到顶部
总数 11 1 2 下一页