- 我使用 amazon redshift 作为我的数据仓库
- 我有一个字符串类型的字段(field1)。一些字符串以四个数字开头,而另一些则以字母开头:
'测试 alpha'
'1382 测试 beta'
- 我想过滤掉字符串不以四个数字开头的行
- 查看 redshift 文档,我不相信 isnumber 或 isnumeric 是函数。似乎“喜欢”功能是最好的可能性。
我试过了
其中 left(field1, 4) 像 '[0-9][0-9][0-9][0-9]'
这不起作用,从下面的链接看来,redshift 可能不支持:
https://forums.aws.amazon.com/message.jspa?messageID=439850
'where' 子句中是否有错误?如果不是,并且 redshift 不支持该子句,有没有办法过滤?我正在考虑使用演员表
cast(left(field1,4) as integer)
如果它产生错误,然后传递该行,但不确定如何在亚马逊红移中执行此操作。或者是否有其他用于非数字过滤器的代理。
谢谢