目前有个需求,当finereport数据集需要用到某个参数时,参数值为空的时候,where 列名=null查询没结果,列名 is null查询有正确结果.请问怎么写sql无论where 列名=参数 是否为空都能正确查询出正确结果
sql没有 =null这个语法啊
where 1=1 ${if(len(参数名)=0," AND 字段名 IS NULL"," AND 字段名 IN ('"+参数名+"')")}
---
where 1=1 ${IF(INARRAY("null",SPLIT(参数名,"','"))>0," AND (字段名 IN ('"+参数名+"') OR 字段名 IS NULL)"," AND 字段名 IN ('"+参数名+"')")}
${IF(LEN(参数名)=0,""," AND 字段名 IN ('"+参数名+"')")}
sql没有=null这个语法,要是判断可以用is null或者安全等于<=>来判断null值