文字列関数

EQLでは、次に示す文字列関数がサポートされます。

関数 説明
CONCAT 2つ以上の文字列引数を連結して1つの文字列を作成します。
SUBSTR 文字式の一部(部分文字列)を返します。
TO_STRING 値を文字列に変換します。

CONCAT関数

CONCATは、2つ以上の文字列値を連結した結果の文字列を返す行関数です。構文は次のとおりです。
CONCAT(string1, string2 [, stringN])

各引数には、リテラル文字列(単一引用符で囲む)、文字列型の属性、または文字列を生成する任意の式を指定できます。

この問合せの例では、3つのリテラル文字列を引数に使用しています。
RETURN results AS 
SELECT
  CONCAT('Jane ', 'Amanda ', 'Wilson') AS FullName
FROM EmployeeState
GROUP
次の同じような問合せでは、2つの文字列型属性と引用符で囲んだスペースを使用して顧客の姓と名前を分けます。
RETURN results AS 
SELECT
   ARB(CONCAT(CUST_FIRST_NAME, ' ', CUST_LAST_NAME)) AS CustomerName
FROM EmployeeState
GROUP

SUBSTR関数

SUBSTR関数には、次の2つの構文があります。
SUBSTR(string, position)

SUBSTR(string, position, length)
ここで、
  • stringは、解析される文字列です。
  • positionは、部分文字列の開始位置を示す数値(詳細は後述)です。
  • lengthは、抽出する部分文字列の長さを指定する数値です。lengthが省略された場合、EQLはstringの末尾まですべての文字を返します。lengthが1より小さい場合、EQLはNULLを返します。
position引数は次のように処理されます。
  • positionを0にすると、1として扱われます。
  • positionが正の場合、stringの始めから数えて最初の文字を見つけます。
  • positionが負の場合、EQLはstringの終わりから逆方向に数えます。
  • positionstringの長さより大きい場合、EQLはNULLを返します。

positionは、ゼロから数えないことに注意してください。たとえば、5番目の文字から始めるには、positionは5である必要があります。

TO_STRING関数

TO_STRING関数は、整数値を受け取って等価の文字列を返します。構文は次のとおりです。
TO_STRING(int)

入力値がNULLの場合は、出力値もNULLになります。

この問合せの例では、整数属性P_SIZEの値を等価の文字列に変換します。
RETURN results AS 
SELECT
  ARB(TO_STRING(P_SIZE)) AS Sizes
FROM ProductState
GROUP