不选则全选

select 客户,部门编号,部门,业务员,case when AVG(isnull(期初,0))+sum(isnull(借,0)-isnull(贷,0)) >= 0 then AVG(isnull(期初,0))+sum(isnull(借,0)-isnull(贷,0)) else 0  end 借方余额,case when AVG(isnull(期初,0))+sum(isnull(借,0)-isnull(贷,0)) < 0 then -(AVG(isnull(期初,0))+sum(isnull(借,0)-isnull(贷,0))) else 0  end 贷方余额,账套 from  ye 

 where  客户 != '部门领用' and 客户 != '待查'

${if(len(公司) == 0,"","and 账套 in ('" + 公司 + "')")}

${if(len(部门) == 0,"","and 部门编号 in ('" + 部门 + "')")}

${if(len(客户) == 0,"","and 客户 in ('" + 客户 + "')")}

GROUP BY 客户,部门编号,部门,业务员,账套

--------------------------------------------------------------  

复选框我全选跟 为空 结果是不一样的。。。。我都懵逼了

我在数据库执行SQL  不加条件 数明明是对的  我日。。。


FineReport 长路漫浩浩 发布于 2021-1-27 17:22 (编辑于 2021-1-27 17:32)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共5回答
最佳回答
0
长路漫浩浩Lv4初级互助
发布于2021-1-27 17:59

SQL 逻辑写错了。。。。。

最佳回答
0
ColdmanLv6高级互助
发布于2021-1-27 17:23
最佳回答
0
CD20160914Lv8专家互助
发布于2021-1-27 17:27

有可能,你的公司,部门  客户这三个字段,有为null的数据,这样就会造成不一样的情况,你查一下这三列是不是有为is null的数据。

最佳回答
0
烟尘Lv6高级互助
发布于2021-1-27 17:29

首先确认一下复选框的返回值类型是否为字符串,分隔符是否为','

如果设置没问题,那就说明复选框并没有包含所有值,请检查一下

重点看一下表里是否有空值,空值遇到in判断的时候是不显示的。

最佳回答
0
privacyLv5初级互助
发布于2021-1-27 17:30

你可以对比一下全选in的数据范围和不做过滤的数据范围是否一致

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