1
我有一个数据表,如下图所示,尝试使用CASE语句在SQL Server
create table #UserRegion
(
UserName varchar(25),
RegionName varchar(25),
RegionID varchar(10),
RegionStatus varchar(15),
DefaultFlag char(1)
)
Insert into #UserRegion
values ('UserOne', 'Chicago', 'MW-1', 'Oniline', '1'),
('UserTwo', 'SanJose', 'W-6', 'Oniline', '0'),
('UserThree', NULL, NULL, 'Oniline', NULL),
('UserFour', NULL, NULL, 'Oniline', NULL),
('UserFive', 'Miami', 'E-4', 'Oniline', '0')
我想要的结果集,如果regionname/regionid空,那么它应该在挑选regionname和区域ID从Defaultflag = 1的可用regionname和regionid。
任何帮助将不胜感激。
旁白:使用'CHAR(1)'来存储'Bit'值提供了一个很好的方式来存储数据,你不想要,例如'j'。如果你不期望需要额外的价值,那么你不应该允许他们。 – HABO