ストアド関数 ストアド関数とは: SQL コードの一部をカプセル化し、特定の関数を完了して、結果を返します。 ストアド関数の構文は次のとおりです。 関数を作成する function([関数パラメータ[,….]]) 戻り値の型を返す Begin もし( 戻り値(返されたデータ) それ以外 戻り値(返されたデータ) 終了の場合; 終わり; 例えば、create function count_news(hits int) returns int です。 ストアド プロシージャの戻りパラメータとは異なり、ストアド関数は定義時にどの変数が戻りパラメータであるかを直接宣言しません。代わりに、戻りパラメータのデータ型を宣言するために returns のみを使用します。戻りパラメータは、関数本体で return を使用して返されるデータ変数を返すことで表されます。以下の点に留意することが重要です。 ストアドファンクションの制限 フロー制御ステートメント (IF、CASE、WHILE、LOOP、WHILE、REPEAT、LEAVE、ITERATE) も有効です。 変数宣言 (DECLARE) と代入 (SET) は有効です。 条件文を許可します。 例外処理ステートメントも許可されます。 ただし、関数には制限があることに留意してください。関数内ではテーブルにアクセスできません。したがって、関数内で次のステートメントを使用することは違法です。
ストアド関数とストアドプロシージャの違い 1. ストアド関数には戻り値が 1 つだけありますが、ストアド プロシージャには戻り値がありません。 2. 関数には入力パラメータのみ設定でき、「in」は設定できませんが、ストアド プロシージャには複数の「in」、「out」、および「inout」パラメータを設定できます。 3. ストアド プロシージャ内のステートメントはより強力です。ストアド プロシージャは非常に複雑なビジネス ロジックを実装できますが、関数には多くの制限があります。たとえば、関数内で挿入、更新、削除、作成などのステートメントを使用することはできません。ストアド関数はクエリ作業のみを完了し、入力パラメータを受け入れて結果を返すことができます。つまり、関数によって実装される機能はより対象を絞ったものになります。 4. ストアド プロシージャはストアド関数を呼び出すことができます。ただし、関数はストアド プロシージャを呼び出すことはできません。 5. ストアド プロシージャは通常、独立した部分 (呼び出し) として実行されます。関数はクエリ ステートメントの一部として呼び出すことができます。 例1:
達成目的: 表 1 からすべての担当者のリストを取得し、表 2 から各担当者がコンピューターと管理者を使用した回数を取得します。 ユーザーリスト ユーザー数 管理者 Qin Yun 3 Li Dawei、Ma Huateng、Li Dawei 途中 2 Ma Huateng、Li Dawei 以下もご興味があるかもしれません:
|
<<: 小規模プログラムへのデータキャッシュ機構の応用と実装
>>: Windows Server 2019 で NAS を構成する方法
目次1.union: クエリ結果を追加できます1) すべてを結合: 重複を削除できません2) ユニオ...
目次ブラウザのレンダリングメカニズムリフローと再塗装リフロー逆流を引き起こす行為:再描画再描画を引き...
この記事では、JD.comのカルーセル効果の表示を実現するためのJavaScriptの具体的なコード...
質問昨日、データベースSQLを書いているときに問題が発生しました。問題の根本は、SQL ステートメン...
これを実現するには、ES6 モジュール開発とオブザーバー モードを使用します。オブザーバー パターン...
META タグは、一般的に タグと呼ばれ、HTML Web ページのソース コード内の重要な HTM...
この記事では、ブラインド効果を実現するためのjQueryの具体的なコードを参考までに紹介します。具体...
サーバーにはNginx、データベースサポートにはMongo、Python言語のWebフレームワークに...
目次1. 手ぶれ補正機能2. Vueでdebouceの手ぶれ補正機能を使用する1. 手ぶれ補正機能2...
一般的に、関数は実行する前に呼び出す必要があることはご存じのとおりです。以下に示すように、関数を定義...
Redis は、ANSI C で記述されたオープンソースの NoSQL データベースであり、ネットワ...
HTML の img タグで画像の中心を表示する方法は、現在 3 つあります。ここで記録しておきま...
目次スロットスロットとは何ですか?スロットの内容コンパイルスコープフォールバックコンテンツ名前付きス...
XML スキーマは、DTD に代わる XML ベースのものです。 XML スキーマは、DTD に代わ...
概要Linux 用のオープン ソース ネットワーク監視ツールは数多くあります。たとえば、帯域幅の使用...