34,590
社区成员
列A 列 B
aa bb
bb cc
cc dd
有这么一个表,如果我查 bb ,先从B列开始查询 如果查询不到就从A列查询。这样的sql查询语句怎么写
demo:
declare minId int,
@maxId int,
@count int
--变量体(列名A、B)的值
declare @colA nvarchar(20),
@colB nvarchar(20)
--首先逐行遍历表数据
select @count = count(*), minId = min(id), max(Id) from [表名]
while (@min is not null and @minId <= @maxId)
begin
--获取每行的A值和B值
select @colA = [列名A], @colB = [列名B] from [表名] where Id = @minId
--判断B列值是否为空
if isnull(@colB,'') !=''
begin
//do someting ....
end
if isnull(@colB,'') ='' and isnull(@colA,'') !=''
begin
//do someting ....
end
set @minId = @minId + 1
end