输入表中有数据,结果表应从输入表中读取所有数据,并检查“名称”列的长度,并在结果表中打印<= 5的长度
enter image description here enter image description here
请问您可以建议使用循环(如果不是这样的话)...像使用条件<= 5读取数据一样,通过将其存储在临时表变量中的insert语句,以及使用final select语句,我们将获得输出。 .. plz帮助
答案 0 :(得分:2)
只需将LEN()
函数与case
表达式一起使用:
select t.id,
(case when len(name) <= 5
then concat(name, '_', len(name))
else name
end) as name,
age
from table t
答案 1 :(得分:0)
您可能想在下面尝试-
insert into Output_table(id,Name,Age)
select i.id,
(case when LEN(Name)<=5 then name+'_'+ CONVERT(varchar(2),LEN(Name))
else Name
end) as Name,
i.age
from input_table i