以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助] IN 关键字,如何连接数组 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=158165) |
-- 作者:5159518 -- 发布时间:2020/11/10 10:52:00 -- [求助] IN 关键字,如何连接数组 Dim flm As String = DataTables(e.For m.Name & "_Table1").GetComboListString("人员工号") DataTables(e.For m.Name & "_Table2").LoadFilter = "[工号] Not IN flm.Split("|")" DataTables(e.For m.Name & "_Table2").Load() 上面的代码报错,改了几次,也没有改成功,请教应该如何改?
|
-- 作者:有点蓝 -- 发布时间:2020/11/10 10:56:00 -- DataTables(e.For m.Name & "_Table2").LoadFilter = "[工号] Not IN (\'" & flm.replace("|","\',\'") & "\')" |
-- 作者:5159518 -- 发布时间:2020/11/10 11:04:00 -- 以下是引用有点蓝在2020/11/10 10:56:00的发言: DataTables(e.For m.Name & "_Table2").LoadFilter = "[工号] Not IN (\'" & flm.replace("|","\',\'") & "\')" ok,十分感谢
|
-- 作者:5159518 -- 发布时间:2020/11/10 20:47:00 -- 老师,类似的问题,再请教一下, 我的sql数据库中有表A,其中有备注列“人员姓名”,每一行该列的内容类似为:张三|李四|王二毛|。。。。等,每个名字是用“|”分隔开的 我想在要在表中查找:“人员姓名”中包含譬如“张三”的行,用select,中“in” 关键字,应该如何写查询语句? Dim cmd As New SQLCommand cmd.C cmd.CommandText = "SELECT * Fro m {工作时间} where 归属月份 = \'2020年11月\' and 人员姓名.Contains(\'张三\') " Dim dt As DataTable = cmd.ExecuteReader() |
-- 作者:有点蓝 -- 发布时间:2020/11/10 20:53:00 -- 和上面的用法完全一样 |
-- 作者:5159518 -- 发布时间:2020/11/11 18:06:00 -- 以下是引用5159518在2020/11/10 20:47:00的发言:
老师,类似的问题,再请教一下, 我的sql数据库中有表A,其中有备注列“人员姓名”,每一行该列的内容类似为:张三|李四|王二毛|。。。。等,每个名字是用“|”分隔开的 我想在要在表中查找:“人员姓名”中包含譬如“张三”的行,用select,中“in” 关键字,应该如何写查询语句? Dim cmd As New SQLCommand cmd.C cmd.CommandText = "SELECT * Fro m {工作时间} where 归属月份 = \'2020年11月\' and 人员姓名.Contains(\'张三\') " Dim dt As DataTable = cmd.ExecuteReader() 老师,可能我的表述让您误解了,按照上面的代码,表“工作时间”中的“人员姓名”列里面的内容类似为:张三|李四|王二毛|。。。。等,每个名字是用“|”分隔开的,而我要査找的的要求,就是表“工作时间”中哪一行的“人员姓名”列里面包含“张三”这个字符,当然,这一行的“人员姓名”列里面可能还包含其他字符。 这样的代码要如何写? |
-- 作者:有点蓝 -- 发布时间:2020/11/12 8:48:00 -- cmd.CommandText = "SELECT * From {工作时间} where 归属月份 = \'2020年11月\' and \'|\' +人员姓名 + \'|\' like \'%|张三|%\' " |