CSDN博客

img jiahanhui

A Sql Tip

发表于2004/9/16 11:36:00  502人阅读

对于如下形式的Sql语句:
select * from t1 where c1 = @c1 and c2 = @c2
如果只输入了@c1参数而没有输入c2参数,通常需要改写语句的查询条件:
select * from t1 where c1 = @c1
这导致Sql语句必须动态生成,处理非常繁琐。后来经高人指点,将Sql语句改成如下形式:
select * from t1 where @c1 in (c1, '') and @c2 in (c2, '')
这样当@c2为空时,语句等效为:
select * from t1 where @c1 in (c1, '') and @c2 <> ''
呵呵,以后再也不用为动态生成查询条件而烦心了。

ps:括号中的表达式应根据查询字段的类型不同而改变。

阅读全文
0 0

相关文章推荐

img
取 消
img