三个字段两两相同取的其一的
文章来源:丹阳文学网 | 2021-10-29
三个字段两两相同取的其一
表T_Zone_Inf
Level1 Level2 Level3
-------------------------------------------------- -------------------------------------------------- 安徽省 安庆市 安庆市
安徽省 蚌埠市 蚌埠市
安徽省 亳州市 亳州市
安徽省 巢湖市 巢湖市
北京市 北京市 海淀区
安徽省 滁州市 定远县
陕西省 商洛市 镇安县
需要得到结果:
level1+level2+leve3
安徽省安庆市
安徽省蚌埠市
安徽省亳州市
安徽省巢湖市
北京市海淀区
安徽省滁州市定远县
陕西省商洛市镇安县
SQL codecreate table T_Zone_Inf(
Level1 nvarchar(10),
Level2 nvarchar(10),
Level3 nvarchar(10)
)
go
create function myWork(@L1 nvarchar(10),@L2 nvarchar(10),@L3 nvarchar(10))
returns nvarchar(30)
as
begin
declare @results nvarchar(30)
if (@L1 = @L2)
begin
set @results = @L1 + @L3
end
else
begin
if (@L2 = @L3)
begin
set @results = @L1 + @L2
end
else
begin
set @results = @L1 + @L2 + @L3
end
end
return @results
end
select Work(Level1,Level2,Level3) from T_Zone_Inf
SQL codeCREATE TABLE T_Zone_Inf (Level1 varchar(20),Level2 varchar(20),Level3 varchar(20))
insert into T_Zone_Inf select \"安徽省\",\"安庆市\",\"安庆市\"
union all select \"安徽省\",\"蚌埠市\",\"蚌埠市\"
union all select \"安徽省\",\"亳州市\",\"亳州市\"
union all select \"安徽省\",\"巢湖市\",\"巢湖市\"
union all select \"北京市\",\"北京市\",\"海淀区\"
union all select \"安徽省\",\"滁州市\",\"定远县\"
union all select \"陕西省\",\"商洛市\",\"镇安县\"
CREATE VIEW VB_T_Zone_Inf
AS
SELECT
ALevel=Level1+
CASE WHEN Level2=Level3 THEN Level2
ELSE Level2+Level3
到底要不要api END
FROM T_Zone_Inf
SELECT * FROM VB_T_Zone_Inf
/*
ALevel
------------------------------------------------------------
安徽省安庆市
安徽省蚌埠市
安徽省亳州市
安徽省巢湖市
北京市北京市海淀区
安徽省滁州市定远县
陕西省商洛市镇安县
(所影响的行数为 7 行)
*/
郑州哪家医院妇科医院好人工泪液可以缓解视疲劳吗
沈阳阴道炎治疗哪家好
上一篇:三个视图查出所有呢
上一篇:三个字段两两相同取的其一