读书人

怎么根据传递的参数选择不同的where语

发布时间: 2012-03-14 12:01:12 作者: rapoo

如何根据传递的参数选择不同的where语句
我想在datawindow的SQL语句中实现这样的情况:当传递进来的string类型version参数值为“最新”时就增加一个WHERE条件,其他情况则不用增加。如何写??
我想用IIF实现的,但不太会用,请好心人指点....
比如我的SQL语句是这样的:
SELECT .....
FROM TABLE1
WHERE TABLE1.LSH=:INPUT_LSH AND
IIF(:version= '最新 ',需增加的选择条件,什么都不用增加)

请问IIF里面truevalue,falsevalue怎么写才对?


[解决办法]
先用getsqlselect()取出原来的SQL语句.

然后用setsqlselect()语句设置新的sql语句.
要求所有字符必须与原来的一致,一般来说,适用于只修改sql 的 where 部分.
[解决办法]
恩,同意楼上说的,动态组SQL,但是显示列无法动态组,参数都是字符串,直接在script中用switch或者if就可以解决这个问题.
[解决办法]
老兄,pb没有iif语句.你喜欢的话可以自己写个功能一样的全局函数来代替

读书人网 >PB

热点推荐