在sql中我使用
regexp_instr(substr(trim(col),1,2),'^([0-9]){2}$') = 1
但我不确定如何在配置单元中查看此内容,我尝试regexp_extract
而不是regexp_instr
,但我只有最后一位数字。
答案 0 :(得分:0)
我希望这样的事情可以发挥作用:
where col rlike '[0-9]{2}$'
您的代码有trim()
;您也可以在表达式中包含该逻辑:
where col rlike '[0-9]{2}[ ]*$'
我也会在原始系统中推荐这种简化的逻辑。
答案 1 :(得分:0)
substr(col,length(col)-1)
返回最后两个字符
cast(substr(col,length(col)-1) as int)
将返回NULL
您可以查看case when cast(substr(col,length(col)-1) as int) is NULL/is not NULL then ...
的示例:
select substr('abcdef12',length('abcdef12')-1)
返回12
cast(substr('abcdef12',length('abcdef12')-1) as int)
返回12
cast(substr('abcdef1x',length('abcdef1x')-1) as int)
返回NULL
如有必要,添加一个trim()