2009-04-03 9 views
0

selectステートメントのwhere部分で使用できる関数を作成したいと考えています。このように:selectステートメントのwhere部分で使用できるORACLE SQL関数

select 'x' from table where addNumber(4,3)=7; 

私はMS SQLでこれを行う方法を知っていますが、このOracle SQLを実行したいと思います。これどうやってするの?

+0

ユーザ定義関数(udf)が決定的な関数であるかどうかを判断する必要があります。あなたのudfが決定的なものとして宣言されると、あなたはパフォーマンスを得ることができ、関数ベースのインデックスでudfを使うことができます。 – tuinstoel

答えて

1

あなたがPL/SQL関数を作成する必要があります...

CREATE OR REPLACE FUNCTION addNumber(firstParam IN NUMBER, 
            secondParam IN NUMBER) 
RETURN NUMBER 
IS 
BEGIN 
    RETURN firstParam + secondParam; 
END; 
/

...あなたが行ったようにそれを呼び出す、あなたは(おそらくSQL * Plusを使用して)を使用しているscheamにこれを実行し、上記のSQLステートメント。

+0

クイックアンサー – gyurisc

関連する問題