0

Teradata Syntax リファレンスをよく調べましたが、役に立ちませんでした

数字のある行がいくつかあります:

ID
Mickey
Laura9
Larry59N

行から整数を取り除くにはどうすればよいですか?

SUBSTR(id, 0, index(id, '%FORMAT%')) が機能することは理解していますが、整数を検索するために %FORMAT% 領域に何を入力すればよいかわかりません。

4

2 に答える 2

3

oTranslate を使用して数字を削除できます。

BTEQ -- SQL リクエストまたは BTEQ コマンドを入力します。

the_name, oTranslate( the_name, 'a0123456789','a') を選択
から
( SELECT 'Larry59N' the_name FROM ( SELECT 'X' DUMMY ) a
         ユニオンオール
         SELECT 'Laura9' FROM ( SELECT 'X' DUMMY ) b
         ユニオンオール
         SELECT 'Mickey' the_name FROM ( SELECT 'X' DUMMY ) c
       ) d
;


 *** クエリが完了しました。3行見つかりました。2 列が返されました。
 *** 合計経過時間は 1 秒でした。

the_name oTranslate(the_name,'a0123456789','a')
-------- ---------------------------------------------- -----------
Larry59N LarryN
Laura9 ローラ
ミッキーミッキー

HTH。

乾杯。

于 2011-09-16T12:53:25.360 に答える
1

残念ながら、これを実現する Teradata 固有の機能はないと思います。Teradata Developer Exchange (リンク)に投稿された UDF を参照することをお勧めします。特にこの関数eReplaceCharは、このデータを使用して目的を達成するのに役立つようです。上記のリンクにある UDF は Apache 2.0 ライセンスの下で公開されているため、それらを使用しても問題はありません。

于 2011-07-12T21:28:09.987 に答える