请问参数传递中,有些参数当没有值时,不在where条件中做筛选,请问这个怎么实现?
请问参数传递中,有些参数当没有值时,不在where条件中做筛选,请问这个怎么实现?比如select *from Awhere b=@b and C=@C
传递参数树时,根据C的值决定查询结果是 select *from Awhere b=@b and C=@C还是 select *from Awhere b=@b ,这个要怎么实现呢? 当C为空时就不做筛选,分为两个步骤实现:
1. 设置参数允许为NULL
2. 在SQL 语句中添加 参数为空条件;
select *fromAwhere b=@b and (C=@C or @C is NULL); Lenka.Guo 发表于 2016-3-4 09:19
当C为空时就不做筛选,分为两个步骤实现:
1. 设置参数允许为NULL
2. 在SQL 语句中添加 参数为空条件;
...
不好意思,不是参数的值为NULL,是如果我们定义了一个参数@C,如果这个参数传值了,就加到where条件里,如果参数不传值,and c=@c就不在where条件里出现,不使用这个条件过滤~! 您好,
您是指根据参数是否为空来选择具体的SQL 语句,这个与报表参数具体的传的值没有关系,报表参数只是用来接收值的,具体的操作还是要根据业务逻辑来判断;
根据您的需求,建议您SQL 中创建触发器或存储过程来执行,http://www.gcpowertools.com.cn/d ... !Documents/_309.htm
页:
[1]