sql问题

筛选器大类中 只有 "成人四季","童装四季","成羽","童羽"四个字段   现在需要增加判断"成人四季"+"童装四季" 是"四季" 筛选  请问我的sql应该怎么写啊

FineReport 空瓶氧气 发布于 2023-9-4 13:37 (编辑于 2023-9-4 14:29)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
CD20160914Lv8专家互助
发布于2023-9-4 13:39(编辑于 2023-9-4 14:12)

 你增加一个选项后判断 就行了

${if(len(cs2)=0,"",if(cs2="四季","and 表中字段 in('成人四季','童装四季')","表中字段名称 in('"+ cs2 + "')"))}

image.png

  • 空瓶氧气 空瓶氧气(提问者) 数据集中我该怎么写呢
    2023-09-04 14:00 
  • CD20160914 CD20160914 回复 空瓶氧气(提问者) 就是我上面的写法呢。你直接复制,改成你的参数与字段名称就行了!
    2023-09-04 14:01 
  • CD20160914 CD20160914 回复 空瓶氧气(提问者) 看上面语句返回的结果。
    2023-09-04 14:02 
  • CD20160914 CD20160914 回复 空瓶氧气(提问者) 那你下拉框加一个四季,然后参数直接按我修改后的判断就行了,重新复制我上面的语句,改成你的字段与参数名称!
    2023-09-04 14:12 
最佳回答
0
用户k6280494Lv6资深互助
发布于2023-9-4 13:40(编辑于 2023-9-4 14:22)

select * from b where 1=1

${if(find("四季",cs)>0,"and 字段='四季'","and zd='"+cs+"'")}

cs替换成你的参数名,替换字段

  • 用户k6280494 用户k6280494 回复 空瓶氧气(提问者) 这个就是数据集里面啊
    2023-09-04 14:21 
最佳回答
0
snrtuemcLv8专家互助
发布于2023-9-4 13:40

sql改成like

select * from 表

where 1=1

${if(len(控件名)=0,""," and 字段 like '%"+控件名+"%'")}

  • snrtuemc snrtuemc 回复 空瓶氧气(提问者) 就是我的这个写法啊,改成like查询
    2023-09-04 14:16 
最佳回答
0
坚定的小帆薯Lv7高级互助
发布于2023-9-4 13:42

加个过滤条件即可

where 1=1 ${if(find("四季",类型)>0,"and 数据库类型 like '%四季%'","and 数据库类型='"+类型+"'")}

  • 空瓶氧气 空瓶氧气(提问者) 数据集中我该怎么写呢
    2023-09-04 14:02 
  • 坚定的小帆薯 坚定的小帆薯 回复 空瓶氧气(提问者) 这个就是写在数据集的,把【类型】字段改为控件参数名,把【数据库类型】改为对应数据库字段名即可
    2023-09-04 14:08 
  • 4关注人数
  • 247浏览人数
  • 最后回答于:2023-9-4 14:29
    请选择关闭问题的原因
    确定 取消
    返回顶部