使用変数 - のSQLServer

まず、ローカル変数の定義と代入

定義構文:

- DECLAREローカル変数
DECLARE  変数名@ データ型

- ローカル変数の宣言複数の
DECLARE  1変数名@データ型1、2変数名@データ型2

 

 

割り当て構文:

SET  @変数名 =値またはSELECT  @変数名 =

選択されたレコードの使用が一つだけあることを確実にする割り当てを選択します。

 

実際の使用例:

たとえば、次のように私は今、学生のテーブルを持っています。

 

 

私は今、馬李馬のLi、学生やバックの前で学生を識別するために、需要を持って、この要件は、ローカル変数を使用する必要があります。

- 二つの変数の定義、学生数保存、保存の名前
DECLAREは @stuId  int型@stuName  VARCHAR20 - 変数の代入名前を付ける
SET  @stuName  =  馬のLiを
- マリースクール見つかりました学籍番号とに変数に格納された
SELECT  @stuId  = StudentId から学生WHERE StudentName =  @stuName 
- 学生馬李前と後の情報を見つける
SELECT  *  からの学生をWHERE StudentId =@stuId  -  1またはStudentId =@stuId  +  1

次のようにクエリ結果は以下のとおりです。

 

二、SETおよびSELECTを比較します

利用シナリオ セット 選択
同時に複数の変数の代入で サポートしていません。 サポート
式は、複数の値を返す場合 エラー 変数に返された最後の値
式は値を返さない場合には 変数はNULL値を割り当てられ、 変数は、その値を保持しています

 

 例えば、参加者は、上記の表に従って、次のような違いを使用します。

DECLARE  @stuAddress  VARCHAR500)、@stuName  VARCHAR20 - SET @stuAddress = '南開区、ホンハムアパート5-5-102'、@stuNameは= '馬のLi'が-そのような割り当てを許可しない
SELECTを @ stuAddress  =  ' 南開区、ホンハムのアパート5-5-102 '@stuName  =  ' 馬李は'            - 許可
- SET @stuAddress =(SELECT StudentAddress学生から) -許可しない
SELECT  @stuAddress  = StudentAddress から学生                 - 許可
SETを @stuAddress =選択 StudentAddressをから学生1 < 0- NULL值選択@stuAddress = StudentAddressをから学生1 < 0 - 保持原值   
         

 

第三に、グローバル変数

グローバル変数は、接頭辞として@記号の両方を使用しています。

 

 すべての変数は使用します:

 

 

 

 

 

 

おすすめ

転載: www.cnblogs.com/xulinjun/p/12020189.html