如何动态选择字段作为条件来查询

来自:http://topic.csdn.net/u/20100831/16/0323bffd-299d-4ebc-92f5-3284ef9b29a9.html

 

数据库中有两个类似的字段类型A,类型B,外界传来一个参数。在sql语句中如何使当B字段不为空时就用B字段作为条件来匹配参数,当B字段为空时就用A字段作为条件来筛选?

 

if object_id('[tb]') is not null drop table [tb] go create table [tb]([a] int,[b] int) insert [tb] select 1,2 union all select null,3 union all select 1,3 union all select 3,null go select * from tb where case when b is null or b=1 then a else b end=3 /** a b ----------- ----------- NULL 3 1 3 3 NULL **/ 

你可能感兴趣的:(sql,数据库,object,table,null,insert)