以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助] 表达式有点不灵  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=140392)

--  作者:susanhe
--  发布时间:2019/9/4 21:20:00
--  [求助] 表达式有点不灵

 

 

你好,以下黄色标注的哪儿错了,可以帮忙看一下吗? 谢谢。

 

  fdr("零件总需数量") = DataTables("物料需求").compute("sum(demand)", "批号=\'" & xm & "\' and (层次 not in (\'父层\') or 层次 is null) and (KanBan not in (\'KanBan\') or KanBan is null) and PartDesc not in (\'%说明%\',\'%标签%\',\'%手册%\',\'&检验单%\')")


--  作者:有点蓝
--  发布时间:2019/9/5 8:46:00
--  
not in 不支持%符号,去掉
--  作者:susanhe
--  发布时间:2019/9/5 19:08:00
--  

但要包含这些文字的时候,用什么表示 ?


--  作者:有点酸
--  发布时间:2019/9/5 20:23:00
--  
参考:

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

[姓名] Like \'%赫%\'

[姓名] Like \'赫%\'

[姓名] Like \'%赫\'

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

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

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

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

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


--  作者:susanhe
--  发布时间:2019/9/5 22:02:00
--  

麻烦帮忙纠正一下,谢谢。

 

 


    fdr("零件总需数量") = DataTables("物料需求").compute("sum(demand)", "批号=\'" & xm & "\' and (层次 not in (\'父层\') or 层次 is null) and (KanBan not in (\'KanBan\') or KanBan is null) and PartDesc not like (\'%说明%\') or PartDesc not like (\'%标签%\') or PartDesc not like (\'%手册%\') or PartDesc not like (\'%检验单%\')")


--  作者:有点蓝
--  发布时间:2019/9/6 9:15:00
--  
.....and PartDesc not like \'%说明%\' and  PartDesc not like \'%标签%\' and PartDesc not like \'%手册%\' and PartDesc not like \'%检验单%\'")