首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > PB >

PB 计算列中使用case when的有关问题

2012-02-05 
PB 计算列中使用case when的问题?帮忙分析下哪里有问题,我想判断某列的第一个字符是否为数字,如果是数字就

PB 计算列中使用case when的问题?
帮忙分析下哪里有问题,
我想判断某列的第一个字符是否为数字,如果是数字就取所有的,如果不是的话就把该字符替换成0 (注:该列一个7个字符,第一个可能是字母,也可能是数字。)

case ( isNumber(left(column_name,1)) when true then right(column_name,7) else '0'+right(column_name,6) )




[解决办法]
不用case,改用if吧,一样的效果:
if(isNumber(left(column_name,1)),right(column_name,7),'0'+right(column_name,6)) 

[解决办法]
楼上的可以啦,学习一下,不过if里面那个right(column_name,7)可以直接写column_name吧,反正只有7个字符
[解决办法]
是啊,必须用if,case的第1个参数必须是列名称,而不是条件:
If(IsNumber(Left(column_name, 1)), column_name, '0' + Mid(column_name, 2))

热点排行