ADQL クエリでは、次の 2 つの主なカテゴリの式を使用します。

  • SELECT 句で使用されるフィールド式
  • WHERE 句で使用される条件式

式を作成するには、次の構文に示されているようにフィールド名、関数、数値、および演算子を使用します。


field_expression の構文(SELECT 句)

  • {field_name | function | numeric_literal}
  • (式):式をカッコで囲み、クエリ内の操作の順序を示します。
  • 次のような数学式
    • unary_operator 式
    • binary_operator 式
  • [NOT] expression COMPARISON_OPERATOR value などの condition_expression は SELECT 句内の field_expression で使用されるエイリアスにすることもできます。
    例: 

    SELECT field_name AS myField... WHERE myField > 2
    CODE

condition_expression の構文(WHERE 句)

SELECT 句のフィールド式の構文には、関数を含めることもできます。function_expression の構文は、function(field_name, arguments, ...) です。 

構文要素説明
field_name または numeric_field_name

指定したイベントタイプのフィールドの名前。フィールド名にスペースまたは特殊文字が含まれる場合、そのフィールド名には逆引用符が必要です。たとえば、フィールド名 `full name` は、スペースが含まれるため、逆引用符で囲まれています。全リストについては、「特殊文字」を参照してください。

ADQL クエリでは、イベントサービスの内部名を使用します。デフォルトフィールドとその内部名のリストについては、「ADQL データ」を参照してください。

functionAnalytics の関数」を参照してください。
numeric_literal

一連の数字。オプションで小数点「.」、符号 {+ | -} を含めることができます。例:2、-4、3.14

unary_operator- unary 演算子は、オペランドの値を負にします。
binary_operator算術演算子:{*、/、%、+、-}。「数学式」を参照してください。
COMPARISON_OPERATOR値を比較する一連の演算子。全リストについては、「比較演算子」を参照してください。
LOGICAL_OPERATOR論理演算子」を参照してください。
value

value の構文は {numeric_literal | string | boolean} です。値は、指定された field_name の値と比較するために使用されるテキスト、数値、日付、またはブール値です。値のデータ型は、指定したフィールドのタイプと一致している必要があります。

テキスト文字列には引用符が必要です。数値、日付、ブール値(true または false)および NULL には、引用符は必要ありません。引用符として、一重引用符または二重引用符を使用できます。



特定の配列要素に式を適用する代わりに、すべての配列要素に式を適用することができます。

スペースまたは特殊文字を含むフィールド

イベントサービスの内部名に特殊文字が含まれる場合、その名前を WHERE 句内のフィールド式で使用するときには逆引用符で囲む必要があります。segments.httpData.headers.User-Agent のようなフィールド名の場合、ADQL クエリで segments.httpData.headers.`User-Agent` を使用する必要があります。

次に例を示します。

SELECT segments.httpData.headers.`User-Agent`, count(segments.httpData.headers.`User-Agent`) FROM transactions WHERE segments.httpData.url = 'http://localhost:29990/packages'
CODE

スペースやその他の特殊文字が命名に使用される可能性が最も高い状況は、データコレクタを使用してフィールド名が追加される場合です。 


特殊文字

ADQL の特殊文字は次のとおりです。

  • 等しい:「=」
  • 等しくない:「<>」または「!=」
  • より小さい:「<」
  • 以下:「<=」
  • より大きい:「>」
  • 以上:「>=」
  • 正:「+」
  • 負:「-」
  • アスタリスク:「*」
  • スラッシュ:「/」
  • パーセント:「%」
  • 連結:「||」
  • 疑問符:「?」
  • 左丸カッコ:「(」
  • 左角カッコ/中カッコ:「 [」
  • 右丸カッコ:「)」
  • 左各カッコ/中カッコ:「]」
  • 二重引用符:「""」
  • アンダースコア:「_」