ページの先頭行へ戻る
Symfoware Server V12.7.0 XQueryリファレンス
FUJITSU Software

4.2.1 リテラル

機能

原子値の直接的な構文表現を指定します。

記述形式

文字列リテラル

数値リテラル

参照項番

一般規則

文字列リテラル
  • “&”と“'”を除いた文字
    文字のうち、特殊記号の“&”と“'”を除いた文字を表現しています。

  • “&”と“"”を除いた文字
    文字のうち、特殊記号の“&”と“"”を除いた文字を表現しています。

  • 既定義エンティティー参照
    XQueryの構文上、重要な意味を持ついくつかの文字を、別の文字列で表現しています。文字列リテラルが生成される時、既定義エンティティー参照はそれぞれが表現する文字に置き換えられます。XQueryの既定義エンティティーとそれが表現する文字を以下に示します。

    エンティティー参照

    表現される文字

    <

    <

    &gt;

    >

    &amp;

    &

    &quot;

    "

    &apos;

    '

  • 引用符(シングルクォーテーション、ダブルクォーテーション)について

    • 文字列リテラルの両端に指定した文字が“"”のとき、その間の文字として“"”を指定することはできませんが、“'”を指定することはできます。

    • 文字列リテラルの両端に指定した文字が“"”のとき、その間の文字として“"”を利用するために、“"”のエスケープ文字が用意されています。“"”のエスケープ文字は“""”で表されます。

    • 文字列リテラルの両端に指定した文字が“'”のとき、その間の文字として“'”を指定することはできませんが、“"”を指定することはできます。

    • 文字列リテラルの両端に指定した文字が“'”のとき、その間の文字として“'”を利用するために、“'”のエスケープ文字が用意されています。“'”のエスケープ文字は“''”で表されます。

  • 文字列リテラルのデータ型はxs:string型です。

  • 文字列リテラルの長さは最大30,000バイトまで指定できます。ただし、文字列リテラルの長さは文字コード系をUNICODEで表現した時の長さで計算されます。

  • 既定義エンティティー参照および引用符の長さは、文字列リテラルに指定した文字の長さで計算されます。例えば、“&lt;”の長さは4であり、“""”の長さは2になります。

注意

SQL文においては、XQuery式が文字列定数で表現されるため、文字列リテラルの両端を囲む区切り記号に、' (シングルクォーテーション)を指定することはできません。' (シングルクォーテーション)を含む文字列リテラルを指定する場合には、既定義エンティティー参照の&apos;を指定してください。

A要素のテキストノードの値が「'ABC銀行'」を表すXQuery式

XMLQUERY('/A[text()="&apos;ABC銀行&apos;"]'
   PASSING 伝票)
数値リテラル
  • 数値リテラルは数字、文字e、E、特殊記号“.”、“+”、“-”で構成されます。

  • 数値リテラルは正の数値を表現します。

  • 負の数値は、算術式の単項演算“-”を利用することで表現されます。

  • 数値リテラルのデータ型はxs:double型です。

  • 数値リテラルの長さは最大255バイトまで指定できます。ただし、数値リテラルの長さは文字コード系をUNICODEで表現したときの長さで計算されます。

  • 数値リテラルの構成要素(数字、文字、特殊記号)はすべて、数値リテラルの長さに加算されます。例えば、“12.3E+45”の長さは8になります。

  • 数値リテラルに指定可能な数値範囲は、指数部11ビット、仮数部52ビットの浮動小数点数で表現可能な範囲(約-1.7E+308~+1.7E+308)です。

使用例

例1

この式の評価結果は、xs:string型の値JAPANです。

"JAPAN"
例2

この式の評価結果は、xs:string型の値FIREです。

'FIRE'
例3

この式の評価結果は、xs:string型の値"です。

"&quot;"
例4

この式の評価結果は、xs:string型の値"です。

""""
例5

この式の評価結果は、xs:string型の値'です。

"'"
例6

この式の評価結果は、xs:double型の値100です。

100
例7

この式の評価結果は、xs:double型の値3.14です。

3.14
例8

この式の評価結果は、xs:double型の値0.999です。

.999
例9

この式の評価結果は、xs:double型の値670です。

6.7e+2