ロジックは、私がこのストアドプロシージャで作業C.SQLスカラー変数
にするために使用しています何と比較していないようだと、私はSQLでのスカラ変数を理解する問題があります。
CREATE procedure [dbo].[sp_GetUserNameByLast4SSNandDOB]
@SSN varchar(4)
@DOB date
AS
SELECT
User_FirstName + ' ' + User_LastName AS EmployeeName
FROM
tblUsers m
WHERE
RIGHT(m.User_SSN, 4) = @SSN
AND m.User_DOB = @DOB
変数を渡して、返される1つの行を返します。しかし、変数は常にスカラーであると思われます。スカラーを避ける方法を理解する助けがあれば、大歓迎です。ありがとうございました!
使用しているデータベースで質問にタグを付けます。 –
あなたは、SQLとCが2つの異なるシステムである言語の性質について考えることができます.Cはプログラミング言語であり、SQLはデータベース言語でデータベースはそれ自体の構造を持っていますが、すべてがここで定義されなければならないので、スカラー以外の変数に対応できるSQLは表示されません。 – maSTAShuFu
** SQL Server **のサイドノート:** sp_'を使用しないでください**ストアドプロシージャの接頭辞。マイクロソフトは、[*ストアドプロシージャの名前付け*を参照してください](http://msdn.microsoft.com/en-us/library/ms190669%28v=sql.105%29.aspx)、およびあなたはいつか名前衝突のリスクを将来実行します。 [ストアドプロシージャのパフォーマンスにも悪い](http://www.sqlperformance.com/2012/10/t-sql-queries/sp_prefix)単に 'sp_'を避け、他の何かを接頭辞として使うのが最善です。 –