カスタムのメトリックや属性を個別に作成する場合には、関数を頻繁に使用して、ビジネス情報の比較や計算、操作を行います。
Exploreには、日付やテキスト文字列、計算などの処理に役立つさまざまな関数が用意されています。この記事は、利用可能な関数やその使用方法を調べるリファレンスとして活用いただけます。
この記事では、次のトピックについて説明します。
初めての使い方
標準ユーザー定義メトリックや標準ユーザー定義属性を作成するときには、関数を選択します。式の編集ウィンドウで関数の名前を入力するか、「関数」で「追加」をクリックしてリストから関数を選択します。
関数を式に追加すると、式に標準の値が表示されます。これらの値は、式で使用する値に置き換える必要があります。この例では、件名が「[Flagged]([フラグ付き])」で始まるチケットだけを返すようにします。
- 「計算」メニュー()で、「標準ユーザー定義属性」をクリックします。
- 計算された属性に名前を付けます。この例では、「Subject begins with [Flagged]」を使用します。
- 「関数」で「追加」をクリックします。
- 式ウィンドウに「IF」を入力します。
- 「関数」で「追加」をクリックします。
- 「LEFTPART」を探します。検索ボックスで「フィルター」をクリックして「テキスト」のカテゴリで値を絞り込むか、リストをスクロールして必要な関数を探します。
- 「LEFTPART」の横にある「+」をクリックします。
- 「IF LEFTPART(_text,_number)」の式が表示されます。_textパラメータをチケットの件名の属性に変更します。「_text」をハイライトし、「フィールド」メニューから「チケットの件名」を選択するか、式を直接上書きして属性を追加します。
式は、「IF LEFTPART([チケットの件名],_number)」になります。
- 「_number」のテキストを、比較する文字数に変更します。「[Flagged]([フラグ付き])」には9つの文字があるので、「9」を入力します。
式は、「IF LEFTPART([チケットの件名],9)」になります。
- 最後に、検索の条件を入力します。ここでは、「[Flagged]([フラグ付き])」というテキストを指定します。最終の式は次のようになります。
IF LEFTPART([チケットの件名],9)="[Flagged]" THEN [チケットID] ENDIF
レポートでこの属性を使用すると、件名が"[Flagged]"で始まるチケットのみが返されます。
さらにサポートや具体的な例が必要な場合は、「Exploreでの式の記述方法」を参照してください。
基本的な計算演算子
上記の関数に加え、以下のような基本的な算術演算子を使用して計算を実行し、文字列を結合することができます。
演算子 | 説明 |
+ | 2つの数値を合算します。または、2つの文字列を結合します。 |
- | 1つの値をもう1つの値から引きます。 |
* | 2つの値を掛け算します。 |
/ | 値を別の値で割ります。 |
= | ある値が別の値と等しいかどうかをテストします。 |
!= | ある値が別の値と等しくないかどうかをテストします。 |
> |
最初の値が次の値より大きいかどうか(x>y)をテストします。 |
< |
最初の値が次の値より小さいかどうか(x<y)をテストします。 |
>= |
最初の値が次の値以上かどうか(x>=y)をテストします。 |
<= |
最初の値が次の値以下かどうか(x<=y)をテストします。 |
% | 値を別の値で割った後に、モジュロ(リマインダ)を計算します。 以下に例を示します。5%2は1を、20%3は2を返します。 |
論理関数
この関数を使用すると、個々のニーズに合わせて情報を分析および表示する自由度が大きく高まります。
関数 | 説明 |
IF THEN ELSE条件式 | 論理値を評価します。 形式:IF (condition) THEN (value if true) ELSE (value if false) ENDIF この関数の詳細については、「IF THEN ELSE関数の使用」を参照してください。 |
AND | 入力した2つの式がTRUEの場合、TRUEを返します。 以下に例を示します。 IF ([チケットチャネル]="Email") AND ([送信者のメールアドレス]="fred@fredco.com") THEN [チケットID] ENDIF fred@freedco.comからのメールを通じて受け取ったすべてのチケットを返します。 |
または | 入力した式が1つでもTRUEであれば、TRUEを返します。 以下に例を示します。 IF ([チケットチャネル]="Email") OR ([チケットチャネル]="Voice") THEN [チケットID] ENDIF メールチャネルまたは音声通話チャネルを通じて受け取ったすべてのチケットを返します。 |
NOT | 入力した式の論理値を逆転します。 以下に例を示します。 IF NOT([チケットチャネル]="Email") THEN [チケットID] ENDIF メールチャネルを通じて受け取ったチケット以外のチケットがすべて返されます。 |
TRUE | 論理値「TRUE」を返します。 |
FALSE | 論理値「FALSE」を返します。 |
IN(_param,_array) | 入力した最初のパラメータが2番目のパラメータで指定されている配列に存在する場合、TRUEを返します。 例: IN(200,ARRAY(100,200,300,400))はTRUEを返します。 IN(250,ARRAY(20,40,60,80))はFALSEを返します。 |
SWITCH条件式 | SWITCHを使用すれば、複数のブランチを持つIF THEN ELSE文をより簡単に記述し直すことができます。 SWITCH (_tested_element) { CASE _value1: _return_value CASE _value2: _return_value DEFAULT: _default_return_value } この関数の詳細については、「SWITCH関数で複数の条件式を追加する方法」を参照してください。 |
属性関数
この関数を使用すると、レポートが返す属性の数をカウントする基本的な操作を実行できます。また、より高度な操作を行うことで、計算の集計レベルを「固定化」したり、拡張したりすることも可能です。
関数 | 説明 |
COUNT_VALUES(_attribute) | 入力した属性の値の数をカウントします。繰り返しの値も含まれます。ユーザー定義属性およびユーザー定義メトリックの条件として使用できますが、ユーザー定義メトリックのTHEN句では使用できません。 以下に例を示します。IF COUNT_VALUES([Ticket ID])>30 THEN 1 ELSE 0 ENDIF 上記の例では、チケットの数が30件以上の場合は1を返し、30件未満の場合は0を返します。
ヒント:ある属性の値の数をカウントするメトリックを作成したい場合、メトリックの式は単純に[Attribute]とします。その後、通常どおりCOUNT集計方法を適用できます。
|
DCOUNT_VALUES(_attribute) | 入力した属性の個々の値について、それぞれの数をカウントします。ユーザー定義属性およびユーザー定義メトリックの条件として使用できますが、ユーザー定義メトリックのTHEN句では使用できません。 以下に例を示します。IF COUNT_VALUES([Organization name])>100 THEN 1 ELSE 0 ENDIF 上記の例では、組織が100以上ある場合は1を返し、100未満の場合は0を返します。
ヒント:属性の個別値の数をカウントするメトリックを作成したい場合、メトリックの式は単純に[Attribute]とします。その後、通常どおりD_COUNT集計方法を適用できます。
|
ATTRIBUTE_FIX(集計方法(メトリック名), 属性1, 属性2) |
指定した属性(この例では属性1と属性2で集計された集計方法(メトリック名)の値が返されます。このメトリックの結果に影響を与える属性は他にありません。 ユーザー定義属性は、ATTRIBUTE_FIX関数の内部では使用できません。 以下に例を示します。 ATTRIBUTE_FIX(MED(初回返信時間 (分), [チケットの作成日時 - 年], [チケットの作成日時 - 月]) 詳細および例については、「集計レベル関数の使用」を参照してください。 |
ATTRIBUTE_ADD(集計方法(メトリック名), 属性1, 属性2) |
属性1と属性2に加えて、レポート内のすべての属性に集計された集計方法(メトリック名)の値が返されます。 ユーザー定義属性は、ATTRIBUTE_ADD関数の内部では使用できません。 以下に例を示します。 ATTRIBUTE_ADD(MED(初回返信時間 (分), [チケットの作成日時 - 年], [チケットの作成日時 - 月]) 詳細および例については、「集計レベル関数の使用」を参照してください。 |
タグ関数
タグ関数は、タグの有無を検索するのに役立ちます。チケットタグ、コールタグ、またはタグを使用する他のすべての要素を含めることができます。
関数 | 説明 |
INCLUDES_ALL([タグ属性], "タグ1", "タグ2") | 指定したすべてのタグがタグ属性に含まれている場合にTRUEを返します。 例: INCLUDES_ALL([チケットのタグ], "London", "Milan")はチケットに「London」と「Milan」の両方のタグが含まれている場合にTRUEを返します。 NOT INCLUDES_ALL([チケットのタグ], "London", "Milan")は、チケットに「London」タグと「Milan」タグの両方が含まれていない場合にTRUEを返します。 この関数のその他の使用例については、「タグを使用したレポーティング」を参照してください。 |
INCLUDES_ANY([タグ属性], "タグ1", "タグ2") | 指定したいずれかのタグがタグ属性に含まれている場合にTRUEを返します。 例: INCLUDES_ANY([チケットのタグ], "London", "Milan")はチケットに「London」または「Milan」のタグが含まれている場合にTRUEを返します。 NOT INCLUDES_ANY([チケットのタグ], "London", "Milan")は、チケットに「London」と「Milan」のタグのどちらも含まれていない場合にTRUEを返します。 この関数のその他の使用例については、「タグを使用したレポーティング」を参照してください。 |
文字列関数
この関数を使用すると、テキストの検索と評価の処理ができます。式とパターンを作成して使用すれば、テキストの変更も可能です。
これらのテキスト関数(CONTAINS、LEFTPART、SUBSTR、FIND、LENGTHなど)のいくつかの使用例については、「Exploreレシピ:ネストされたドロップダウンフィールドのレポートを作る方法」を参照してください。
関数 | 説明 |
CONTAINS(_text,_text_to_search) | 最初に入力したパラメータに2番目のパラメータが従属文字列として含まれる場合、TRUEを返します。 以下に例を示します。CONTAINS([送信者の名前],"Sally")
|
ENDSWITH(_text,_text_to_search) | 入力した最初のテキストが入力した2番目のテキストで終わっている場合、TRUEを返します。 以下に例を示します。 ENDSWITH([米国の州],"ippi")では、Mississippiの場合にTRUEを返し、Delawareの場合はFALSEを返します。 |
FIND(_text,_text_to_find,_number_start_index) |
代入された開始インデックスから、2番目に代入された文字列の最初のインスタンスのインデックス(最初に代入された文字列で)を返します。2番目に代入された文字列が見つからない場合は、-1を返します。文字列の最初の文字のインデックスは0です。 例: If [出荷モード]="Urgent" then FIND([出荷モード","Norm",0)は-1を返します。 If [出荷モード]="Normal" then FIND([出荷モード","ma",0)は3を返します。 If [出荷モード]="Urgent" then FIND([出荷モード","ge",2)は0を返します。 |
LEFTPART(_text,_number) | 入力した文字列の左端の文字数_numberを返します。 以下に例を示します。 If [部門]="Technical documentation" then LEFTPART([部門],9)は「Technical」を返します。 |
LENGTH(_text) | 入力したテキストの長さ(文字数)を返します。 以下に例を示します。 LENGTH([製品カテゴリ])は、製品カテゴリ属性の個々の値の長さを返します。 |
LOWERCASE(_text) | 入力したテキストを小文字に変換して返します。 |
LTRIM(_text) | 入力した属性の値を、左側の空白を削除して返します。 以下に例を示します。RTRIM([名前])は、[名前]が「Peter」の場合、「Peter」を返します。 |
REPLACE(_text,_text_to_replace,_text_to_replace_with) |
_text_to_replaceのすべてのインスタンスが_text_to_replace_withで置換されている文字列のコピーを返します。 以下に例を示します。 IF [米国の州]="new York" then REPLACE([米国の州],"n","N")は、「New York」を返します。 |
RIGHTPART(_text,_number) | 入力した文字列の右端の文字数_numberを返します。 以下に例を示します。 If [部門]="Technical documentation" then RIGHTPART([部門],13)は、「documentation」を返します。 |
RTRIM(_text) | 入力した属性の値を、右側の空白を削除して返します。 以下に例を示します。RTRIM([名前])は、[名前]が「Peter」の場合、「Peter」を返します。 |
STARTSWITH(_text,_text_to_search) | 入力した最初のテキストが入力した2番目のテキストで始まっている場合、TRUEを返します。 以下に例を示します。 STARTSWITH([米国の州],"Miss")では、Mississippiの場合にTRUEを返し、Delawareの場合はFALSEを返します。 |
IS_POSITIVE(_text) | 文字列の分析結果に基づいて、「正の数」の場合はTrue、「負の数」の場合はFalseを返します。 |
SUBSTR(_text,_number_start_index,_number_end_index) |
開始インデックス(最初に入力した整数)で指定した文字と、終了インデックス-1(2番目に入力した整数)までのすべての文字から構成される_textの一部を返します。 以下に例を示します。SUBSTR("Web marketing",0,3)は「Web」を返します。 |
TRIM(_text) | 入力した属性の値を、左側または右側の空白を削除して返します。 以下に例を示します。RTRIM([名前])は、[名前]が「Peter」の場合、「Peter」を返します。 |
UPPERCASE(_text) | 入力したテキストを大文字に変換して返します。 |
STRING(_number) | 入力した数値を文字列に変換します。 |
LPAD(_text,_length,_pad) | 文字列が_lengthの長さになるまで、_textの左に_padを挿入します。 以下に例を示します。 LPAD("1",7,"?")は「??????1」を返します。 |
RPAD(_text,_length,_pad) | 文字列が_lengthの長さになるまで、_textの右に_padを挿入します。 以下に例を示します。 RPAD("1",7,"?")は「1??????」を返します。 |
LINK(_url,_label) | 入力したURLを参照するHTMLリンクを返します。 詳細は、「Exploreレシピ:チケットへのクリック可能なリンクを構成する」を参照してください。 |
正規表現関数
正規表現(regexまたはregexpとも呼ばれる)は、検索パターンを定義する文字列です。Exploreでは、正規表現を使用して式の中で以下のような計算ができます。
関数 | 説明 |
REGEXP_MATCH(_text,_regexp) | 文字列が正規表現と一致する場合、TRUEを返します。 |
REGEXP_EXTRACT(_text,_regexp) | 正規表現内の取得グループと一致する文字列の一部を返します。この関数の使用例については、「Exploreでユーザーのメールドメインについてレポートできますか?」を参照してください。 |
REGEXP_REPLACE(_text,_regexp,_replace_text) | 正規表現と一致するテキストのサブストリングがreplace_textに置き換えられる場合の文字列を返します。 以下に例を示します。REGEXP_REPLACE("Hello","lo","p")は「Help」を返します。 |
正規表現の詳細については、Wikipediaのこのページを参照してください。
日付関数
Exploreでは、日付や時間の作成、比較、計算ができます。この関数は、任意の日付範囲で業務データをチェックするのに時間がかかるような場合に特に役立ちます。
関数 | 説明 |
DATE(_text) | 入力したテキストが、UTCタイムスタンプの日付に変換されます。入力する文字列の形式はさまざまですが、少なくとも月、日、年が含まれている必要があります。 例:
|
DATE_EQUAL(_date,_date) | 入力した2つの日付が一致した場合、「TRUE」を返します。 以下に例を示します。IF DATE_EQUAL([チケットの作成日時 - 月],[チケットの解決日時 - 月]) THEN [チケットID] ENDIF 作成された月と同じ月に解決したすべてのチケットを返します。この例では年は含まれていないので、2018年6月に作成され、2020年6月に解決したチケットが返されます。 |
DATE_NOT_EQUAL(_date,_date) | 入力した2つの日付が一致しない場合、「TRUE」を返します。 以下に例を示します。IF DATE_EQUAL([チケットの作成日時 - 月],[チケットの解決日時 - 月]) THEN [チケットID] ENDIF 作成された月と同じ月に解決していないすべてのチケットを返します。 |
DATE_LESS(_date,_date) | 最初に入力した日付が2番目に入力した日付よりも後の場合、TRUEを返します。 以下に例を示します。IF DATE_LESS([チケットの割り当て日時 - 日付],[チケットの期限 - 日付 - 日付]) THEN [チケットID] ENDIF 期限より前に割り当てられたすべてのチケットを返します。 |
DATE_LESS_OR_EQUAL(_date,_date) | 最初に入力した日付が2番目に入力した日付よりも後か、同じ日付の場合、TRUEを返します。 以下に例を示します。IF DATE_LESS_OR_EQUAL([チケットの割り当て日時 - 日付],[チケットの期限 - 日付 - 日付]) THEN [チケットID] ENDIF 期限以前に割り当てられたすべてのチケットを返します。 |
DATE_GREATER(_date,_date) | 最初に入力した日付が2番目に入力した日付よりも前の場合、TRUEを返します。 以下に例を示します。IF DATE_GREATER([日付 - 日付],[チケットの期限 - 日付 - 日付]) THEN [チケットID] ENDIF 期限を過ぎてから割り当てられたすべてのチケットを返します。 |
DATE_GREATER_OR_EQUAL(_date,_date) | 最初に入力した日付が2番目に入力した日付よりも前か、同じ日付の場合、TRUEを返します。 以下に例を示します。IF DATE_GREATER_OR_EQUAL([日付 - 日付],[チケットの期限 - 日付 - 日付]) THEN [チケットID] ENDIF 期限以降に割り当てられたすべてのチケットを返します。 |
DATE_ADD(_date,_date_part,_increment) |
ユーザーのタイムゾーンの指定された日付を、入力された増分で更新して返します。date_partパラメータには、たとえば'year'、'quarter'、'month'、'day'、'hour'などを指定することができます。入力する増分値は整数値でなければなりませんが、負の値を指定することもできます。 |
DATE_DIFF(_date,_date,_date_part) | 2つの日付の相対的な差または正確な差を任意の形式で返します。この関数では、「_date_part」は次のいずれかになります。 相対的な差(整数)の場合:
正確な差の場合:
例: 「DATE_DIFF("2011/10/22","2008/01/06","year")」は「3 (2011-2008)」を返します。 「DATE_DIFF("2011/10/22","2008/01/06","nb_of_years")」は「4 (実際の年数)」を返します。 DATE_DIFF("2019/03/06","2019/03/05","day")は「1」を返します。 DATE_DIFF("2019/03/06","2017/03/05","nb_of_days")は「731」を返します。 |
DATE_FORMAT(_date,_format) | 指定された形式で、ユーザーのタイムゾーンで入力された日付を返します。 使用できる形式のリストについては、「日付のフォーマット」を参照してください。 |
TODAY() | ユーザーのタイムゾーンで現在の日付を返します。 |
NOW() | ユーザーのタイムゾーンで現在の日付と時刻(時間、分、秒)を返します。 |
CURRENT_YEAR() | 現在の年を返します。 |
CURRENT_HALFYEAR() | 現在の半期を文字列(「H1」または「H2」)で返します。 |
CURRENT_QUARTER() | 現在の四半期を文字列(「Q1」、「Q2」、「Q3」、「Q4」)で返します。 |
CURRENT_MONTH() | 現在の月を「1月」、「2月」などで返します。 |
CURRENT_MONTH_NUMERIC() | 現在の月を数値(「1」=1月、「2」=2月など)で返します。 |
CURRENT_DAY() | 現在の日を数値で返します。 |
CURRENT_WEEKDAY() | 週の現在の曜日を文字列(「月曜日」、「火曜日」など)で返します。 |
CURRENT_WEEKDAY_NUMERIC() | 週の現在の曜日を数値(「0」=日曜日、「1」=月曜日など)で返します。 |
CURRENT_HOUR() | ユーザーのタイムゾーンでの現在の時間を数値で返します。 |
CURRENT_MINUTE() | ユーザーのタイムゾーンでの現在の分を数値で返します。 |
CURRENT_SECOND() | ユーザーのタイムゾーンでの現在の秒を数値で返します。 |
YEAR(_date) | 入力した日付の年を返します。 |
MONTH(_date) | 入力した日付の月をテキスト(「1月」、「2月」など)で返します。 |
MONTH_NUMERIC(_date) | 入力した日付の月を数値(「1」=1月、「2」=2月など)で返します。 |
DAY(_date) | 入力した日付の日を返します。 |
WEEKDAY(_date) | 入力した日付の日を文字列(「月曜日」、「火曜日」など)で返します。 |
WEEKDAY_NUMERIC(_date) | 入力した日付の日を数値(「1」=日曜日、「2」=月曜日など)で返します。 |
HOURS(_date) | 入力した日付の時間を返します。 |
MINUTES(_date) | 入力した日付の分を返します。 |
SECONDS(_date) | 入力した日付の秒を返します。 |
WEEK_NUMBER(_date) | 入力した日付に関係する週の数値を返します。詳しくは「週の最初の曜日が週番号に及ぼす影響について」を参照してください。 |
WEEK_NUMBER_MONDAY(_date) | 月曜日から始まる週で、入力した日付に関係する週の数値を返します。 |
WEEK_NUMBER_FRIDAY(_date) | 金曜日から始まる週で、入力した日付に関係する週の数値を返します。 |
WEEK_NUMBER_SATURDAY(_date) | 土曜日から始まる週で、入力した日付に関係する週の数値を返します。 |
WEEK_NUMBER_SUNDAY(_date) | 日曜日から始まる週で、入力した日付に関係する週の数値を返します。 |
START_OF_QUARTER(_date) | 入力した日付の四半期の開始日を返します。 |
END_OF_QUARTER(_date) | 入力した日付の四半期の最終日を返します。 |
START_OF_MONTH(_date) | 入力した日付の月の開始日を返します。 |
END_OF_MONTH(_date) | 入力した日付の月の最終日を返します。 |
START_OF_WEEK(_date) | 入力した日付の週の開始日を返します。詳しくは「レポートおよびフィルター用に週の最初の曜日を設定する方法」を参照してください。 |
END_OF_WEEK(_date) | 入力した日付の週の最終日を返します。詳しくは「レポートおよびフィルター用に週の最初の曜日を設定する方法」を参照してください。 |
START_OF_WEEK_MONDAY(_date) | 月曜日から始まる週で、入力した日付と一致する週の初日を返します。 |
END_OF_WEEK_MONDAY(_date) | 月曜日から始まる週で、入力した日付と一致する週の最終日を返します。 |
START_OF_WEEK_FRIDAY(_date) | 金曜日から始まる週で、入力した日付と一致する週の初日を返します。 |
END_OF_WEEK_FRIDAY(_date) | 金曜日から始まる週で、入力した日付と一致する週の最終日を返します。 |
START_OF_WEEK_SATURDAY(_date) | 土曜日から始まる週で、入力した日付と一致する週の初日を返します。 |
END_OF_WEEK_SATURDAY(_date) | 土曜日から始まる週で、入力した日付と一致する週の最終日を返します。 |
START_OF_WEEK_SUNDAY(_date) | 日曜日から始まる週で、入力した日付と一致する週の初日を返します。 |
END_OF_WEEK_SUNDAY(_date) | 日曜日から始まる週で、入力した日付と一致する週の最終日を返します。 |
DATE_FROM_ISO | パラメータがISO標準タイムスタンプ文字列である場合、タイムスタンプを返します。タイムスタンプにタイムゾーンが設定されていることを前提としますが、オプションのskip-timezoneパラメータをTRUEに設定することで、タイムゾーン情報のないタイムスタンプを解析することができます。 例: DATE_FROM_ISO("2020-07-24T13:42:00Z") DATE_FROM_ISO("2020-07-24T13:42EST") DATE_FROM_ISO("2020-07-24T13:42+05") DATE_FROM_ISO("2020-07-24T13:42," TRUE) |
DATE_FROM_TIMESTAMP(_timestamp) | 指定されたUNIXタイムスタンプ(秒)から日付を返します。 |
DATE_FROM_MILLI_TIMESTAMP(_timestamp) | 指定されたUNIXタイムスタンプ(ミリ秒)から日付を返します。 |
DATE_TO_TIMESTAMP(_date) | 指定された日付から、ユーザーのタイムゾーンのUNIXタイムスタンプを返します。 |
DATE_TO_MILLI_TIMESTAMP(_date) | 指定された日付からUNIXタイムスタンプ(ミリ秒)を返します。 |
SECONDS_TO_TIME(_time) | 秒をHH:MM:SS形式に変換します。 |
FISCAL_YEAR(_date,_start_month) | 入力した日付と開始月を基にして会計年度を返します。monthパラメータは、月の完全な名前にする必要があります(例:「Feb」ではなく「February」)。 |
FISCAL_QUARTER(_date,_start_month) | 入力した日付と開始月を基にして会計四半期を返します。monthパラメータは、月の完全な名前にする必要があります(例:「Feb」ではなく「February」)。 |
FISCAL_WEEK_NUMBER(_date,_start_month) | 入力した日付と開始月を基にして会計週を返します。monthパラメータは、月の完全な名前にする必要があります(例:「Feb」ではなく「February」)。 |
WEEKYEAR(_date) | 入力した日付に関連付けられた週番号が含まれる年を返します。 |
DATE_FIRST(time attribute) |
レポートに追加された属性に基づき、適用されたすべてのフィルターの影響を受ける、最も古い日付またはタイムスタンプを返します。 以下に例を示します。DATE_FIRST([更新 - タイムスタンプ]) レポートに追加したすべての属性を考慮して、最も古い更新タイムスタンプを返します。 詳しい使い方と例については、「最も古い日付関数と最新の日付関数の使用」を参照してください。 |
DATE_LAST(time attribute) |
レポートに追加された属性に基づき、適用されたすべてのフィルターの影響を受ける、最新の日付またはタイムスタンプを返します。 以下に例を示します。DATE_LAST([更新 - タイムスタンプ]) レポートに追加したすべての属性を考慮して、最新の更新タイムスタンプを返します。 詳しい使い方と例については、「最も古い日付関数と最新の日付関数の使用」を参照してください。 |
DATE_FIRST_FIX(time attribute, attribute1, attribute2, ...) |
関数で指定された属性に従って、最も古い日付またはタイムスタンプを返します。レポートに追加された属性は計算に影響しませんが、適用されているフィルターは考慮されます。 以下に例を示します。DATE_FIRST_FIX([更新 - タイムスタンプ], [更新チケットID]) レポートの属性に関係なく、チケットごとに最も古い更新タイムスタンプを返します。 詳しい使い方と例については、「最も古い日付関数と最新の日付関数の使用」を参照してください。 |
DATE_LAST_FIX(time attribute, attribute1, attribute2, ...) |
関数で指定された属性に従って、最新の日付またはタイムスタンプを返します。レポートに追加された属性は計算に影響しませんが、適用されているフィルターは考慮されます。 以下に例を示します。 DATE_LAST_FIX([更新 - タイムスタンプ], [更新チケットID]) レポートの属性に関係なく、チケットごとに最新の更新タイムスタンプを返します。 詳しい使い方と例については、「最も古い日付関数と最新の日付関数の使用」を参照してください。 |
日付のフォーマット
DATE_FORMAT関数では、さまざま日付のタイプで完全なタイムスタンプを表示します。個々の書式は文字で表され、文字の種類はさまざまです。DATE_FORMAT関数の形式を表す部分として関連する文字を入力します。文字はすべて二重引用符("")で入力する必要があります。日付のコンポーネントと時間のコンポーネントを組み合わせると、さらに詳細な日付情報を表示できます。
たとえば、チケットの作成日時 - タイムスタンプ属性のデフォルト形式(2015-01-27 T 13:21:10)をUSスタイル形式(Jan 27, 2015 01:21 PM)に変更するには、次の式を使用します。
DATE_FORMAT([Ticket created - Timestamp],"Mon DD, YYYY hh:MI AM")
使用できる形式を以下の表に示します。この例では、「2017-11-03T15:18:25」というタイプスタンプを使用します。
日付または時間要素 | 文字 | 「2017-11-03T15:18:25」を使用した場合の例 |
年 | YYYY | 2017 |
年 | YY | 17 |
四半期 | Q | Q4 |
月番号 | MM | 11 |
月名 | Mon | Nov |
月名 | Month | November |
年の週(1~53) | WW | 44 |
月の週(1~5) | W | 1 |
年内での経過日数(01~366) | DDD | 307 |
月内での経過日数(01~31) | DD | 3 |
曜日 | 日 | 金曜日 |
曜日 | Dy | Fri |
1日の時間(01~12) | hh | 3 |
1日の時間(1~23) | HH | 15 |
分 | MI | 18 |
秒 | SS | 25 |
ミリ秒(000~999) | MS | 0 |
午前/午後表示(AMまたはPM) | AM | 午後 |
数値関数
この関数を使用すると、レポートの情報にさまざまな数学的計算を施すことができます。
関数 | 説明 |
ABS(_number) | 入力した数値の絶対値を返します。
例: 「1」の絶対値は「1」です。 「-7.3」の絶対値は「7.3」です。 |
BETWEEN(_number,_number,_number) | 入力した最初の数字が他の2つの数字の範囲にある場合、TRUEを返します。 以下に例を示します。 BETWEEN(SUM(利益),500,1500)では、SUM(利益)が「500」から「1500」の範囲にある場合にTRUEを返します。 |
CEIL(_number) | 入力した数値の上限を返します。数字の上限は、その数字以上の最も近い整数です。 例: 「125.4」の上限は「126」です。 「-63.2」の上限は「-63」です。 CEILING(SUM(First resolution time (min)))は、属性に格納されているそれぞれの初回解決時間について、その上限に最も近い整数を返します。 |
EXP(_number) | 入力した指数で累乗し、自然対数の底(e)の値を返します。 以下に例を示します。 EXP(SUM(単価))は、SUM(単価)メトリックの各値の自然対数を返します。 |
FLOOR(_number) | 入力した数値の下限を返します。数字の下限は、その数字以下の最も近い整数です。 例: 「125.4」の下限は「125」です。 「-63.2」の下限は「-64」です。 FLOOR(SUM(First resolution time (min)))は、属性に格納されているそれぞれの初回解決時間について、その下限に最も近い整数を返します。 |
INTEGER(_param) | 入力した整数以外の数値を整数にして返します。 以下に例を示します。 INTEGER(1.56) は 1 を返します |
IS_NUMBER(_param) | 与えられたパラメータが数値(整数または小数)である場合にTRUEを、そうでない場合にFALSEを返します。 例:
|
MAXIMUM(_number,_number) | 入力した2つのパラメータのうち、大きいほうの値を返します。 MAXIMUM(SUM(売上),SUM(支出))は、売上と支出の間で大きいほうの値を返します。 |
MINIMUM(_number,_number) | 入力した2つのパラメータのうち、小さいほうの値を返します。 MINIMUM(SUM(売上),SUM(支出))は、売上と支出の間で小さいほうの値を返します。 |
NUMBER(_param) |
与えられたパラメータを数値表現で返します。数値で表現できない場合はNaNを返します。 例: NUMBER("3.14116") は 3.14116 を返します。 NUMBER ([Box category])は、Box category属性の現在の値の数を返します。 |
PI() |
円の直径に対する円周の比率を表す数学定数(PI)を返します。値は3.141592653589793です。 |
POWER(_number,_number) | 最初に入力した数値を計算して、2番目に入力した数値のべき乗に返します。 以下に例を示します。 IF SUM(単価)=2 then POWER(SUM(単価),3)は、8を返します。 |
RANDOM() |
擬似乱数'n'を返します。0 <= n <1。乱数の整数が必要な場合は、Round(Random()*100)を使用します。 |
ROUND(_number) |
入力した数値が、最も近い整数に丸め(切り上げ/切り下げ)られます。2つの整数のどちらにも等距離の場合、値は切り上げられます。 |
SIGN(_number) |
数値が負数の場合は-1を返し、ゼロの場合は0を、正数の場合は1を返します。 |
SQRT(_number) | 入力した数値の平方根を計算して返します。 |
SQUARE(_number) | 入力した数値の二乗を計算して返します。 |
LN(_number) | 入力した数値の自然対数を返します。 |
LOG10(_number) | 入力した数値の底10(Base-10)の対数を返します。 |
LOG2(_number) | 入力した数値の底2(Base-2)の対数を返します。 |
LOG(_base,_number) | 入力した基数に対する対数として、入力した値を返します。 |
三角関数
この関数は、角度や距離を測定する高度な式を作成する際に役立ちます。
関数 | 説明 |
ACOS(_number) | 代入された数値のアークコサイン(逆余弦)をラジアン単位で計算します。 |
ASIN(_number) | 代入された数値のアークサイン(逆正弦)をラジアン単位で計算します。 |
ATAN(_number) | パラメータに入力したタンジェントの角度(弧度)を返します。戻り値は2で割った負のPIと2で割った正のPIの間になります。 |
ATAN2(_number,_number) | 円のx軸(0,0は円の中心を示す)から反時計回りに測定したときの点y/xの角度をラジアン単位で返します。戻り値は正のPIと負のPIの間です。Y座標を最初のパラメータとして入力します。 |
COS(_number) | 代入された数値のコサイン(余弦)をラジアン単位で計算します。 |
DEGREES(_number) | 代入されたラジアンの値を角度に換算します。 |
RADIANS(_number) | 代入された角度の値をラジアンに換算します。 |
SIN(_number) | 代入された数値のサイン(正弦)をラジアン単位で計算します。 |
TAN(_number) | 入力した角度のタンジェントを返します。 |