为什么下拉单选框什么都不选的时候,查询出来的数据少,选了之后查询是正常的




20200108第一版.cpt


FineReport dihao 发布于 2020-1-8 16:14 (编辑于 2020-1-8 16:46)
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
Wq0706Lv4见习互助
发布于2020-1-8 16:17(编辑于 2020-1-8 17:07)

你筛选条件是怎么写的,导出内置数据集模板看不见


image.png


你这边课程分类要这样写,

${if(len(课程分类)=0,""," and a.cardtype='"+课程分类+"'")}

你之前的写法,当你没有选的时候,就变成了and a.cardtype=''

所以才出现了数据查询不对的情况

  • dihao dihao(提问者) 上传了
    2020-01-08 16:20 
  • dihao dihao(提问者) 我把课程分类替换了报错啊,最后上传那两张图
    2020-01-08 16:48 
  • Wq0706 Wq0706 回复 dihao(提问者) 报错?
    2020-01-08 16:51 
  • dihao dihao(提问者) 回复 Wq0706 是我替换的那个样子吗,就是把${课程分类}替换成${if(len(课程分类)=0,\"\",\" and a.cardtype=\'\"+课程分类+\"\'\")}
    2020-01-08 17:00 
  • Wq0706 Wq0706 回复 dihao(提问者) ${if(len(课程分类)=0,null,双引号 and a.cardtype=单引号双引号+课程分类+双引号单引号双引号)}
    2020-01-08 17:05 
最佳回答
0
xiapanfeiLv3见习互助
发布于2020-1-8 16:19(编辑于 2020-1-8 16:24)

数据集里面sql没有用不选查全部吧

${if(len(课程分类)==0,"", "AND a.cardtypein ('"+课程分类+"')")} 改为这样

  • dihao dihao(提问者) 数据集我传上来了
    2020-01-08 16:22 
  • xiapanfei xiapanfei 回复 dihao(提问者) ${if(len(课程分类)==0,\"\", \"AND a.cardtypein (\'\"+课程分类+\"\')\")} 改为这样
    2020-01-08 16:25 
最佳回答
0
JackloveLv7高级互助
发布于2020-1-8 16:19(编辑于 2020-1-8 16:25)
group by 的上面加一句${if(len(课程分类) == 0,"","and a.cardtype = ('" +  课程分类 + "')")} 之前的and后面的参数语句删掉


  • dihao dihao(提问者) 上传了
    2020-01-08 16:22 
  • Jacklove Jacklove 回复 dihao(提问者) 你需要加一个参数为空显示全部
    2020-01-08 16:23 
  • Jacklove Jacklove 回复 dihao(提问者) 回答修改了 看下
    2020-01-08 16:25 
  • dihao dihao(提问者) 回复 Jacklove 是这样吗,最后上传的俩图片
    2020-01-08 16:46 
  • dihao dihao(提问者) ${if(len(课程分类) == 0,\"\",\"and a.cardtype = (\'\" + 课程分类 + \"\')\")}
    2020-01-09 11:17 
最佳回答
0
LSQ000Lv5中级互助
发布于2020-1-8 16:41

你筛选条件为空的时候,查询语句是“and a.cardtype='' ”,所以查出来的数据很少,你应该这样写${if(len(课程分类)=0,""," and a.cardtype='"+课程分类+"' )},即当课程分类为空是不加这条查询语句,不为空时才添加该条重新语句

  • 4关注人数
  • 581浏览人数
  • 最后回答于:2020-1-8 17:07
    请选择关闭问题的原因
    确定 取消
    返回顶部