1

次のクエリを使用して、oracle sql developer で oracle ビューを作成しています。

    select * from (SELECT DATEENTER as PI_TIMESTAMP,PI_TAG as  PI_TAGNAME, 
case when LENGTH(TRIM(TRANSLATE(final, ' +-.0123456789', ' '))) is null then cast(final as number) else null end as PI_VALUE,
STATUS AS  PI_STATUS  
FROM T2) a
where PI_VALUE is not null

クエリはクエリ ウィンドウで正常に動作していますが、Error(s) parsing SQL: Unexpected token at 134 near ) というエラーが表示されます。136付近で予想外のトークンが。 ビューとして作成しようとすると

ありがとう

4

1 に答える 1

3

おそらく、SQLDeveloperは列名「final」に混乱しています。「final」は、オブジェクト型からの継承を防ぐためにOracle PL/SQLで使用されます。

SQL/Plusでステートメントを実行してみてください-正常に動作するはずです。

ところで、プレーンキャストの代わりにto_number(final)を使用することをお勧めします。

于 2012-06-25T07:03:12.323 に答える