「条件に合うテーブル行のフィールド平均値を計算する」をはじめとする条件付き集計の「やること」や、「フィールド値が特定の値ならば」のようなフィールド値を比較する「条件」では、フィールドの値とパラメーターで指定した値について「等しい」かどうかの比較を行うことがあります。
ここでは、Customine においてフィールド値とパラメーター値を比較して「等しい」かどうかを判定するルールを記載します。大小比較についてはこちらのドキュメントを参照してください。
以下、本ページ内では、比較するフィールドの値を「左辺」、比較値を「右辺」と呼びます。
左辺のフィールドタイプに応じて比較方法が変わってきます。
フィールドタイプによっては、フィールドの値は文字列とは限りません。一方右辺値は文字列なので「文字列でないものと文字列をどう比較するか?」がポイントになります。
左辺 | 比較方法 |
---|---|
文字列(1行) | まず数値として比較し、数値としては一致しない場合文字列として比較 |
数値 | 数値として比較 |
計算 | まず数値として比較し、数値としては一致しない場合文字列として比較 |
文字列(複数行) | 文字列として比較 |
リッチエディター | 右辺が空の場合は、左辺と「空を表すHTML」と比較。 それ以外の場合は文字列として比較 |
チェックボックス | 文字列配列として比較 |
ラジオボタン | 文字列として比較 |
ドロップダウン | 文字列として比較 |
複数選択 | 文字列配列として比較 |
添付ファイル | ※ 非対応につきエラー ※ |
リンク | 文字列として比較 |
日付 | 文字列として比較 |
時刻 | 文字列として比較 |
日時 | 文字列として比較 |
ユーザー選択 | code/name の配列として比較(guest/除去あり) |
組織選択 | code/name の配列として比較(guest/除去なし) |
グループ選択 | code/name の配列として比較(guest/除去なし) |
レコード番号 | 左辺、右辺ともアプリコード部分を除去したうえで数値に変換して比較 |
作成者 / 更新者 | code/name オブジェクトとして比較(guest/除去あり) |
作成日時 / 更新日時 | 文字列として比較 |
カテゴリー | 文字列配列として比較 |
ステータス | 文字列として比較 |
作業者 | code/name の配列として比較(guest/除去あり) |
左辺、右辺とも、全角半角、大文字小文字を無視して等しいかどうかが調べられます。
内部的に数値に変換して比較します。左辺、右辺のうちの少なくとも一方が数値に変換できなかった場合は「数値としては一致しない」とみなされます。
左辺が空配列の場合、右辺が空文字列ならば「等しい」と判定し、そうでなければ「等しくない」と判定します。
左辺が1要素の場合、その1つの要素と右辺値を「文字列として比較」します。
左辺が2要素以上の場合、左辺の配列をカンマ区切りした文字列と右辺値を「文字列として比較」します。
このドキュメントで言う「code/name オブジェクト」とは、ユーザーの「ログイン名/表示名」のようにコードと名前の組み合わせで表現されるものです。code 値は以下を表します。
このタイプのフィールド値を比較する場合、左辺の code 値と右辺値を「文字列として比較」します。name 値は比較されません。
上の表中「guest/除去あり」とある場合、左辺・右辺とも、“guest/” 部分を除去します。これは kintone のゲストユーザーを容易に比較するための仕様です。例えば左辺の code が “guest/test@r3it.com” で、右辺値が “test@r3it.com” だった場合、左辺値は “guest/” を除去して “test@r3it.com” となるので、「等しい」と判定されます。
左辺が空配列の場合、右辺が空文字列ならば「等しい」と判定し、そうでなければ「等しくない」と判定します。
左辺が1要素の場合、その1つの要素を「code/name オブジェクトとして比較」します。
左辺が2要素以上の場合は「等しくない」と判定します。