我的查询条件是两位数,但是实际数据是六位数,如何截取查询呢

如下图所示,我的业务类型为存款贷款是两位数字,但是实际数据库为六位数据,我的筛选条件该如何写呢image.pngimage.pngimage.pngywbzhlx这个传的参数是两位数,但是实际值是个六位数这个筛选给怎么写

FineReport 木子一丶 发布于 2024-9-26 16:35 (编辑于 2024-9-26 16:46)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
shirokoLv6资深互助
发布于2024-9-26 16:36

select * from 表 where 字段 like '%${参数}%'

最佳回答
0
华莉星宸Lv7资深互助
发布于2024-9-26 16:38

什么数据库?

在数据集中过滤吧,截取到第3,4位出来

oracle用substr(字段,3,2)

mid(字段,3,2)

  • 木子一丶 木子一丶(提问者) 就是我传的参数为02 03 ,查询的数据里面是00020401这种,能明白意思嘛,就是过滤条件那里该怎么筛选
    2024-09-26 16:44 
  • 华莉星宸 华莉星宸 回复 木子一丶(提问者) 理解你的意思,在数据集中过滤,where 1=1 and substr(字段,3,2) = '${参数}'。你看是什么数据库 解决对应的就行了
    2024-09-26 16:46 
  • 华莉星宸 华莉星宸 回复 木子一丶(提问者) 用包含的话 会有问题,比如是00020403的这种,就会过滤错误
    2024-09-26 16:47 
  • 木子一丶 木子一丶(提问者) 回复 华莉星宸 但是我那个过滤那里字段怎么截取哇,他不是选择的字段嘛
    2024-09-26 16:52 
  • 华莉星宸 华莉星宸 回复 木子一丶(提问者) 你的数据集怎么写的啊,这样过滤啊,select * from tab where 1=1 and substr(字段,3,2) = '${参数}'
    2024-09-26 16:53 
最佳回答
0
snrtuemcLv8专家互助
发布于2024-9-26 16:40

image.png

  • 木子一丶 木子一丶(提问者) 这个人员的解决了 现在是业务类型,传的参数为02 03 这个地方条件要如何写呢,查询的数据里面是00020401这种
    2024-09-26 16:42 
  • snrtuemc snrtuemc 回复 木子一丶(提问者) 就是讲的用包含,包含02,就查询了包含02的数据,相当于sql语句的like
    2024-09-26 16:44 
  • 木子一丶 木子一丶(提问者) 回复 snrtuemc 不行,万一数据是00030201就筛选不了了,因为只有第3、4位是判断存贷款
    2024-09-26 16:49 
  • snrtuemc snrtuemc 回复 木子一丶(提问者) 你确定,02、03在第三第三位,前面都是00的话,直接 开头是 ="00"+$ywbzhlx 拼接成开头是 0002,0003这样匹配
    2024-09-26 16:52 
  • 4关注人数
  • 131浏览人数
  • 最后回答于:2024-9-26 16:46
    请选择关闭问题的原因
    确定 取消
    返回顶部