关于 过滤条件

11394
11

wyqmd 小试身手Lv3

发表于2019-1-25 13:23

悬赏1

未解决

楼主
各位老师们好

我写的过滤条件报错,原因在那儿呢?
IF(@p7177!="" & @p1874!="",XSJH.DOCDATE >= @p7177 & XSJH.DOCDATE <= @p1874,'1-1')


希望 当开始日期 与结束日期 变量不为空时才执行,任意变量为空.都不执行过滤条件.


11个回答

只看楼主

缱绻 数据领袖Lv6

发表于2019-1-25 13:34

只看该作者

取消 关注该作者的回复

沙发

本帖最后由 缱绻 于 2019-1-25 13:40 编辑

参数名称可以自己命名的,能不能改成一个比较好理解的名称啊?参数为空可以用len(@bbq)=0  这样去判断

巫浅浅 数据达人Lv4

发表于2019-1-25 13:48

只看该作者

取消 关注该作者的回复

板凳

任意变量为空.都不执行过滤条件 那两个参数之间应该用or而不是and呀

wyqmd 小试身手Lv3

发表于2019-1-25 13:56

只看该作者

取消 关注该作者的回复

地板

缱绻 发表于 2019-1-25 13:34
参数名称可以自己命名的,能不能改成一个比较好理解的名称啊?参数为空可以用len(@bbq)=0  这样去判断
...

我知道变量可以重命名,这都不重要.
IF(len(@p7177)!=0 & len(@p1874)!=0,XSJH.DOCDATE >= @p7177 & XSJH.DOCDATE <= @p1874,'1-1')
也不是 len(@p7177)!=0  或 @p7177 != "" 的问题.
问题是 if为假的时候,执行 1-1 报错——
为假的时候,不执行筛选条件,应该怎么写?

计算浮动表元 GRID2->A4 (XSJH.GROUPNAME)时出错:“)”附近有语法错误。

缱绻 数据领袖Lv6

发表于2019-1-25 14:11

只看该作者

取消 关注该作者的回复

5#

wyqmd 发表于 2019-1-25 13:56
我知道变量可以重命名,这都不重要.
IF(len(@p7177)!=0 & len(@p1874)!=0,XSJH.DOCDATE >= @p7177 & XSJ ...

呃呃,,为什么要写‘1-1’啊,是'1=1'吧

wyqmd 小试身手Lv3

发表于2019-1-25 14:17

只看该作者

取消 关注该作者的回复

6#

缱绻 发表于 2019-1-25 14:11
呃呃,,为什么要写‘1-1’啊,是'1=1'吧

我找到问题了.
因为后面两个列的过滤条件,没有写IF——所以才靠成  '')''附近有错误.

''1-1'' 可以不用条件查询库表中的所有数据.
false 不执行查询,空结果.

都可以达到我想要的效果.

缱绻 数据领袖Lv6

发表于2019-1-25 14:18

只看该作者

取消 关注该作者的回复

7#

wyqmd 发表于 2019-1-25 14:17
我找到问题了.
因为后面两个列的过滤条件,没有写IF——所以才靠成  '')''附近有错误.

偶偶,所以不是这个过滤条件的问题啊。。

wyqmd 小试身手Lv3

发表于2019-1-25 15:16

只看该作者

取消 关注该作者的回复

8#

缱绻 发表于 2019-1-25 14:18
偶偶,所以不是这个过滤条件的问题啊。。

老师请教一下.
我想在表 单元格的过滤条件里写 like ,应该怎么写?没搞明白

if(@p9365!="",CKRK2.CARDCODE like %<#=@p9365#>%,"1=1" )

巫浅浅 数据达人Lv4

发表于2019-1-25 15:20

只看该作者

取消 关注该作者的回复

9#

wyqmd 发表于 2019-1-25 15:16
老师请教一下.
我想在表 单元格的过滤条件里写 like ,应该怎么写?没搞明白

百分号外边加个引号

wyqmd 小试身手Lv3

发表于2019-1-25 15:26

只看该作者

取消 关注该作者的回复

10#

巫浅浅 发表于 2019-1-25 15:20
百分号外边加个引号

if(@p9365!="",CKRK2.CARDCODE like '%'@p9365'%',"1=1" )

错误的

wyqmd 小试身手Lv3

发表于2019-1-25 15:37

只看该作者

取消 关注该作者的回复

11#

巫浅浅 发表于 2019-1-25 15:20
百分号外边加个引号

哦,谢谢你,可以了.

上一页12下一页共2页

登录后可回答问题,请登录注册

快速回复 返回顶部 返回列表

小时

全天响应

分钟

快速处理问题

工程师强势助力

明星产品
解决方案
联系合作

400咨询:400-0011-866

技术支持QQ:400-0011-866(工作日9:00-18:00)

产品建议邮箱yixin@esensoft.com

关注我们

扫TA学习更多干货

一对一专家交流

版权所有© 2006-2024 北京亿信华辰软件有限责任公司 京ICP备07017321号 京公网安备11010802016281号