SQL定义数据集中带公式的参数,公式放在框架 ${}中,预览时输入参数值报错。

image.png

用公式定义了三个参数,以中间一个为例。

当预览什么都不输时,会默认全选,可以查看到所有数据,正常。

image.png

image.png

当在ZLOT_TYPE_NCIO输入值Test时,预览报错。

image.png

image.png

日志是这样的

image.png


请问是什么原因? 怎么可以解决

ZoeZhu 发布于 2020-2-13 18:50
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
codeclyLv4初级互助
发布于2020-2-13 19:00(编辑于 2020-2-13 19:31)

Where 中 4Z 这个字段加转义双引号试下  \"


应该是你的字段有特殊字符,需要用双引号,但是又是在函数参数的字符串内,所以需要转义,你改成类似下图中的试试:


"and 4ZA1PP_M10-LOT_TYPE_KEY in ('"  改成 "and \"4ZA1PP_M10-LOT_TYPE_KEY\" in ('"


其他几个函数里面的 字段也这样改下


image.png

  • ZoeZhu ZoeZhu(提问者) 不行 加了 \\\" \"\\ 后 下面三个参数干脆都不见了识别不了
    2020-02-13 19:08 
  • codecly codecly 回复 ZoeZhu(提问者) 我这边试了下,应该是可以的啊,我修改了回答,加了截图
    2020-02-13 19:28 
  • ZoeZhu ZoeZhu(提问者) 回复 codecly 可以了 之前转义符写错了 非常感谢!
    2020-02-14 10:09 
最佳回答
0
ooshanghaiLv5初级互助
发布于2020-2-13 18:56

image.png

  • ZoeZhu ZoeZhu(提问者) where后面有别的过滤条件 然后再到这三个参数的 您的意思是要把后面的1=1删掉吗? and 前面加空格 我试了下还是不行
    2020-02-13 19:05 
最佳回答
0
牛~~~Lv6中级互助
发布于2020-2-13 20:11

你没发现就你标红的那个字段没有双引号括起来,这是你报错的原因。


去掉里面的 and 1=1 ,然后 if 里面的 4ZA1PP...  再拼接一个双引号就可以了。

  • ZoeZhu ZoeZhu(提问者) 是的 知道是这个字段没识别 现在已经解决 谢谢
    2020-02-14 10:10 
最佳回答
0
shirokoLv6资深互助
发布于2020-2-14 02:11

这个字段名是包含了-还是两个字段相减?

如果是包含了-不对吧

  • 5关注人数
  • 779浏览人数
  • 最后回答于:2020-2-14 02:11
    请选择关闭问题的原因
    确定 取消
    返回顶部