- - PR -
PL/SQLを使用した関数作成に関して
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2005-11-26 09:28
PL/SQLで以下のようなことをやりたいと思っていますが、
可能なのでしょうか。 @引数がもし、AAA111だった場合はAAA-111のフォーマットで返すという関数を作成。 A下のようなSQLを実行 select @で作成した関数(引数) from table | ||||
|
投稿日時: 2005-11-26 10:05
可能です・・・で、何処の辺りが分からないんです?
Functionの作り方も、文字列操作も、PL/SQLの初歩に類する事だと思うんですけど。 | ||||
|
投稿日時: 2005-11-27 09:29
>甕星さん
ありがとうございます。自分PL/SQLでプログラムを組んだことがなく、 机上での勉強しかしたことがなかったため、 実現可・不可の確認をしたかった次第であります。 | ||||
|
投稿日時: 2005-11-27 10:34
Oracleから体験版を無償でダウンロードできます。机上だけで勉強するのではなく、実際に動かしてみることを強くお勧めします。 | ||||
|
投稿日時: 2005-11-30 17:03
PL/SQLで本格的なプログラムを組みたいのであれば、マニュアルや書籍できちんと勉強することをお勧めします。
でも実現可・不可の確認だけなら・・・ コンソール(SQL Plus等)で以下のように入力してみてください。 ------------------------------------------------------------ CREATE FUNCTION TEST_FUNC(P1 VARCHAR2) RETURN VARCHAR2 IS R1 VARCHAR2(255); BEGIN R1 := SUBSTR(P1,1,3) || '-' || SUBSTR(P1,4); RETURN (R1); END; / ------------------------------------------------------------ (大した機能はありませんが)これだけで1つストアドファンクションができます。 動作確認は、 SQL> SELECT DEPT_NAME,TEST_FUNC(DEPT_NAME) FROM DEPT; のような方法で可能です。 作成したファンクションはサーバ上の残りますので、不要になったら SQL> DROP FUNCTION TEST_FUNC; で削除してください。 |
1