ストアド関数 ストアド関数とは: 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 を構成する方法
Flash ファイル形式: .FLV および .SWFフラッシュ ビデオ形式には、.flv と .s...
関数のカリー化(黒い疑問符の顔)? ? ?カレー(黒い疑問符の顔)? ? ?これは完璧な中国語翻訳で...
<Head>タグに追加する<meta http-equiv="pragm...
以下のコードはすべて <head>...</head> の間にあり、具体的な...
目次基本的なデータベース操作2) データベースを表示する3) データベースを選択する4) データベー...
この記事では、Vueの具体的なコード例を参考までに紹介します。具体的な内容は以下のとおりです。必要:...
目次序文React Context の初見コンテキストの使い方コンテキストを直接取得できるいくつかの...
CSS 3 アニメーションの例 - タブの背景切り替えの動的効果、具体的なコードは次のとおりです。 ...
1. ミドルウェアの紹介1. 基本概念ElasticSearch は Lucene をベースにした検...
ウェブページに403 Forbiddenと表示されるNginx (yum インストール ログは通常 ...
Linuxシステムバージョン: CentOS7.4 MySQL バージョン: 5.7.28 Linu...
並べ替えの場合、order by は非常に頻繁に使用するキーワードです。インデックスに関するこれまで...
<br />今日、新しくなった ChinaUI.com の Web サイトを見たのですが...
<br />情報の重複、情報過多、情報強迫、パーソナライズされたカスタマイズ、検索エンジ...
序文MySQL では、InnoDB はストレージ エンジン レイヤーに属し、プラグインとしてデータベ...