ふりかえり

筆者
本記事は、SQLの基本、実務使用例編になります。
SQLの基礎に関しましては、
【初学者必見!】SQLの超基礎編の記事をご覧くださいませ。

A子
本編に入ります!
ストアドファンクションとは?
ストアドファンクションは、**データベースに保存しておける「関数」**のことです。
何か1つの値を返す処理を、まとめておくことができます。
プログラミングの関数と同じように、
- 引数(入力)を受け取り、
- 処理を行い、
- 戻り値(出力)を返します。
いつ使うの?
- 計算処理を使い回したいとき
- 複雑な処理をSQLの中でシンプルにしたいとき
- ビューやSELECT文の中で処理結果を取り出したいとき
イメージ図
関数名(引数) → 計算・処理 → 戻り値(結果)
get_tax(1000) → 100 (10%の税額)
ストアドファンクションの基本構文

筆者
まずは、基本構文から見ていきましょう!
create or replace function 関数名 (
引数名 データ型
) return 戻り値の型
is
変数の宣言;
begin
処理内容;
return 戻り値;
end;
/
実務レベルの使用例を見ていこう!

筆者
実際に、SQLを使用してデータを確認していきましょう。
SQLに関しては以下を使用して解説していきます。
create table文、select文、insert文、update文、delete文、
drop table文、につきましては、過去にアップロードした
【初学者必見!】SQLの超基礎編の記事をご覧くださいませ。

A子
目次の、「ふりかえり」のところにそれぞれの記事のリンクが
貼ってあるよ!
または、サイドバーのカテゴリーにSQLがあるから、そちらからでも
参照できます!
Oracle Live SQLで実行していきます!
今回、実行するSQL
消費税(10%)を計算する関数
create or replace function get_tax (
price number
) return number
is
tax number;
begin
tax := price * 0.1;
return tax;
end;
/
実行例:
select get_tax(1000) from dual;

ストアドファンクションとプロシージャの違い
| 種類 | 戻り値 | 用途 |
|---|---|---|
| ストアドファンクション | あり | 計算結果などを「返す」とき |
| ストアドプロシージャ | なし(OUTで渡す) | 複数の処理を「実行」したいとき |
| 項目 | 内容 |
|---|---|
| 目的 | 処理の再利用、結果の計算 |
| 戻り値 | 必ず1つの値を返す |
| 使用場所 | SELECT文やWHERE句、PL/SQLの中 |
| メリット | 処理の共通化、SQLの可読性アップ |
まとめ

筆者
ストアドファンクションについて解説しました。
次回もお楽しみに!










コメント