X

SQL Server リテラル

リテラル

SQL Serverにおいてリテラルとは、識別子によって表現する必要がない明示的な数値、テキスト、日時などのことです。
たとえば、数値リテラルは、’100’や’1000’などの数を示す値です。
テキスト(文字列)リテラル ‘SQL Server’ など、日時リテラルは’2017/12/15’などです。

数値リテラル

SQL Server では取り扱える型によって少しづつ指定が違います。
引用符では囲みません。

binary 型定数は 16 進数の文字列であり、0x というプレフィックスが付きます。
bit 型定数は数値の 0 または 1 で表します。
integer 型定数は数値文字列で表し、小数点を含まない整数である必要があります。
decimal 型定数は、小数点を含む数値文字列で表せます。
float 型定数と real 型定数は科学的表記法で表します。(101.5E5, 0.5E-2)
money 型定数は数値文字列で表し、オプションで小数点および通貨記号をプレフィックスとして付加することができます。

また、数値が正であるか負であるかを示すには、数値型定数に + または – 単項演算子を付加します。

テキスト(文字列)リテラル

英数字 (a ~ z、A ~ Z、および 0 ~ 9)、感嘆符 (!)、アット マーク (@)、および番号記号 (#) などの特殊文字を単一引用符で囲みます。
単一引用符で囲まれた文字列に単一引用符を埋め込む場合は、単一引用符を 2 つ続けて並べることで 1 つの単一引用符を表します。 文字列が二重引用符で囲まれている場合は該当しません。

文字列リテラルに N プレフィックスを付けると Unicode 文字列になります。

実はこのテキストリテラル、とても奥深いです。
私も深く掘り下げると理解できないところが出てきます。
UNICODEとか、照合順位とかいろいろありますので、興味がでたら調べてみてください。

日時リテラル

datetime 型を利用します
単一引用符で囲みます。

‘December 5, 1985’
‘5 December, 1985’
‘851205’
’12/5/98′
など、さまざま表記法があります。

以上、リテラルについての簡単な説明でした。

itsysgroup: