【初学者必見!】SQLの基本、実務使用例を徹底解説!ストアドファンクション編

【初学者必見!】SQLの基本、実務使用例を徹底解説!ストアドファンクション編 SQL

※この記事にはプロモーションが含まれています。

ふりかえり

筆者
筆者

本記事は、SQLの基本、実務使用例編になります。

SQLの基礎に関しましては、

【初学者必見!】SQLの超基礎編の記事をご覧くださいませ。

A子
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子
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の可読性アップ

まとめ

筆者
筆者

ストアドファンクションについて解説しました。

次回もお楽しみに!

この記事を書いた人
たくたく

文系出身・3年目のWeb系エンジニアです。
C#とSQLを得意としています。
同棲生活は2年目に入り、日々仲良く楽しく暮らしています。
プライベートではバイクや車で旅行に行くことが趣味です。
サンリオ好きで、中でもシナモン推しです。
お酒好きとして毎週の晩酌をリラックスタイムにしています。

たくたくをフォローする
SQLエンジニア
シェアする

コメント

タイトルとURLをコピーしました