- データ ウェアハウスとして amazon redshift を使用しています
- 文字列型のフィールド (field1) があります。4 つの数字で始まる文字列もあれば、文字で始まる文字列もあります。
「テスト アルファ」
「1382 テスト ベータ」
- 文字列が 4 つの数字で始まらない行を除外したい
- redshift のドキュメントを見ると、 isnumber または isnumeric が関数であるとは思えません。「いいね」機能が一番可能性が高いようです。
私は試した
where left(field1, 4) like '[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)
エラーが発生した場合は行を渡しますが、Amazon redshift でこれを行う方法がわかりません。または、isnumeric フィルター用の他のプロキシがあります。
ありがとう