我参数两个都为空的时候如何不执行这个查询

SELECT TOP 1 * FROM FR设备管理 

WHERE 1=1 

${if(管理NO="","","and 管理NO='"+管理NO+"'") } 

${if(证书编号="","","and 证书编号='"+证书编号+"'") } 

order by 校正日期 desc 

在这个管理NO和证书编号都为空的时候不执行这个sql

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

SELECT TOP 1 * FROM FR设备管理 

WHERE 1=1 

${if(管理NO="","","and 管理NO='"+管理NO+"'") } 

${if(证书编号="","","and 证书编号='"+证书编号+"'") } 

${if(and(len(管理NO)==0,len(证书编号)==0)," and 1<>1","")}

order by 校正日期 desc 

最佳回答
0
北纬六十六度Lv4初级互助
发布于2022-12-29 13:39

怎么确定不执行的,感觉不会的

最佳回答
0
用户6NWif5139660Lv6资深互助
发布于2022-12-29 13:40(编辑于 2022-12-29 13:53)

不执行实现不了 只能是两个都满足的情况下数据集显示空的 应该会报错

${if(and(管理NO="",证书编号=""),"","

SELECT TOP 1 * FROM FR设备管理 

WHERE 1=1 

${if(管理NO="","","and 管理NO='"+管理NO+"'") } 

${if(证书编号="","","and 证书编号='"+证书编号+"'") } 

order by 校正日期 desc ") } 

最佳回答
0
CD20160914Lv8专家互助
发布于2022-12-29 13:42(编辑于 2022-12-29 13:48)

//查询按钮不用默认的,自定义写一个查询按钮判断两个参数为空没有

image.png

var a=this.options.form.getWidgetByName("公司").getValue();//

var b=this.options.form.getWidgetByName("类型").getValue();

if(a.length==0&&b.length==0){

    alert("不能查询,两个参数为空");

     return false;

}

else {

         _g().parameterCommit();

}

  • 4关注人数
  • 371浏览人数
  • 最后回答于:2022-12-29 14:05
    请选择关闭问题的原因
    确定 取消
    返回顶部