效果图:
sql 实现:
/*
--drop table test
create table Test
(
id int identity(1,1) primary key not null
,a varchar(50)
,ab varchar(50)
,abc varchar(50)
,abcd varchar(50)
)
go
insert into Test values('123',NULL,NULL,NULL)
insert into Test values('123','1234',NULL,NULL)
insert into Test values('123','1234','12345',NULL)
insert into Test values('123','1234','12345','123456')
insert into Test values('234',NULL,NULL,NULL)
insert into Test values('234','2345',NULL,NULL)
insert into Test values('234','2345','23456',NULL)
insert into Test values('234','2345','23456','234567')
go
select id,coalesce(nullif(abcd,''),nullif(abc,''),nullif(ab,''),nullif(a,'')) as abcd,
pid=case
when ISNULL( nullif(a,''),0)>0 and ISNULL( nullif(ab,''),0)=0 then '0'
else (id-1)
end
from dbo.Test
*/