GETUSERJOBTITLES()没法在fine_in_set里用,请问该怎么修改?

我的sql是这样的

${if(GETUSERDEPARTMENTS() != "项目经理","","and FIND_IN_SET(t3.area_name , '" + GETUSERJOBTITLES() + "')")}

日志里看到的是这样的

and FIND_IN_SET(t3.area_name , '广东'),and FIND_IN_SET(t3.area_name , '广西')

GETUSERJOBTITLES()返回两个岗位,这里可以让返回的是字符串,不是数组吗?

FineReport 安静的话匣子 发布于 2021-5-27 11:23
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
1
snrtuemcLv8专家互助
发布于2021-5-27 11:25

直接改成

${if(GETUSERDEPARTMENTS() != "项目经理","","and FIND_IN_SET(t3.area_name , '" + CONCATENATE(GETUSERJOBTITLES()) + "')")}

加一个CONCATENATE函数

  • 安静的话匣子 安静的话匣子(提问者) 谢谢大佬
    2021-05-27 11:26 
  • 安静的话匣子 安静的话匣子(提问者) 尴尬 大佬, 加了CONCATENATE后,前面的if判断条件出问题了,不是项目经理的情况, 本来是空的,现在是and FIND_IN_SET(t3.area_name , \'\')
    2021-05-27 11:45 
  • snrtuemc snrtuemc 回复 安静的话匣子(提问者) 那就是CONCATENATE(GETUSERJOBTITLES()),根据你的需求,在用if判断处理下
    2021-05-27 11:48 
  • 安静的话匣子 安静的话匣子(提问者) 回复 snrtuemc 是我条件写的不好,可以了 谢谢
    2021-05-27 11:55 
  • 2关注人数
  • 320浏览人数
  • 最后回答于:2021-5-27 11:25
    请选择关闭问题的原因
    确定 取消
    返回顶部