2012-02-11 5 views
-1

私は技術的なインタビューでこの質問をしました。sprocと関数の出力の差

ストアドプロシージャの出力と関数の違いは何ですか?

誰でもこの説明をしていただけますか?

+2

また、新しい質問を投稿する前にstackoverflowを最初に検索してください。http://stackoverflow.com/questions/1179758/function-vs-stored-procedure-in-sql-server –

答えて

1

ユーザー定義関数は、強く定義されたスカラー値または表形式の値を返すことができます。基本的に、関数は、T-SQL変数または行セットに割り当てることができる任意のデータ型を戻すことができます。

ストアドプロシージャでは、戻り値の型は厳密には定義されていません。スカラー値または行セット値の可能性があるゼロ、1つまたは複数の結果セットを持つことができます。

+0

なぜ私はそれを考えましたか分かりません。私は答えのその部分を削除しました。また、UDFが副作用のない「純粋な関数」であることを忘れてはいけません。 –

+0

また、ストアドプロシージャに結果セットをまったく設定する必要はありません。 –

+0

@AaronBertrandご清聴ありがとうございます。私はyの答えを更新しましたが、私はすでに重複して閉じるように投票しました。 –