クエリ文字列を使用してレコードを取得する

クエリを使用すると、ある条件で絞り込んだ特定のレコードを取得することができます。

クエリの書き方

クエリは、主に以下の形式に沿って式を記述していきます。

[フィールドID] [演算子] [値 または 関数]
サンプル 1

textフィールド (field_1_) の値が"sample"であり、dateフィールド (field_2_) の値が今日より前であるレコードを取得する。

field_1_ = "sample" and field_2_ < TODAY()
サンプル 2

dropdownフィールド (field_3_) の値に"option2"もしくは"option3"が含まれていて、dateフィールド (field_2_) の値が今月中であるレコードを取得する。

field_3_ in ("option2", "option3") and field_2_ > FROM_THISMONTH("-1", "day") and field_2_ < FROM_THISMONTH("1", "month")
サンプル 3

textフィールド (field_1_) の値に"sample"が含まれていて、userフィールド (field_4_) の値にログインユーザーが含まれているレコードを取得する。

field_1_ like "sample" and field_4_ in (LOGIN_USER)
サンプル 4

datetimeフィールド (field_5_) の値が本日中であり、checkboxフィールド (field_6_) の値に"option2"が含まれていないか、radioフィールド (field_7_) の値に"option3"が含まれていないレコードを取得する。

field_5_ = TODAY() and (field_6_ not in ("option2") or field_3_ not in ("option3"))

演算子

演算子 サンプル 説明
= field_1_ = "test" 演算子の前に指定されたフィールドIDの値が、演算子の後に指定された値と一致するレコードを取得します。
!= field_1_ != "test" 演算子の前に指定されたフィールドIDの値が、演算子の後に指定された値と異なるレコードを取得します。
> field_2_ > 10 演算子の前に指定されたフィールドIDの値が、演算子の後に指定された値より大きいレコードを取得します。
< field_2_ < 10 演算子の前に指定されたフィールドIDの値が、演算子の後に指定された値より小さいレコードを取得します。
>= field_2_ >= 10 演算子の前に指定されたフィールドIDの値が、演算子の後に指定された値以上のレコードを取得します。
<= field_2_ <= 10 演算子の前に指定されたフィールドIDの値が、演算子の後に指定された値以下のレコードを取得します。
in field_3_ in ("A", "B") 演算子の前に指定されたフィールドIDの値が、演算子の後の括弧内に列挙した文字列のいずれかと一致するレコードを取得します。
not in field_3_ not in ("A", "B") 演算子の前に指定されたフィールドIDの値が、演算子の後の括弧内に列挙したどの文字列とも一致しないレコードを取得します。
like field_1_ like "test" 演算子の前に指定されたフィールドIDの値が、演算子の後に指定された値を含むレコードを取得します。
not like field_1_ not like "test" 演算子の前に指定されたフィールドIDの値が、演算子の後に指定された値を含まないレコードを取得します。
match field_4_ match 10 演算子の前に指定されたlookupフィールドのコピー元レコードのレコードIDの値が、演算子の後に指定された値と一致するレコードを取得します。
not match field_4_ not match 10 演算子の前に指定されたlookupフィールドのコピー元レコードのレコードIDの値が、演算子の後に指定された値と異なるレコードを取得します。
or field_2_ < 10 or field_2_ > 20 上述の演算子を使用した2つの条件式の論理和を求めます。
and field_2_ > 10 and field_2_ < 20 上述の演算子を使用した2つの条件式の論理積を求めます。

条件式を括弧「()」で囲むことで、グループ化することができます。

関数とセッション変数

関数・変数名 サンプル 説明
LOGIN_USER field_5_ in (LOGIN_USER)

APIを実行したユーザーに変換します。

括弧「()」は付きません。

TODAY() field_6_ = TODAY()

APIを実行した日に変換します。

datetimeフィールドを対象とする場合は、当日の0時から23時59分までの期間に変換します。

FROM_TODAY(数字, 期間の単位) field_6_ < FROM_TODAY("3", "day")

APIを実行した日を基準とし、指定した期間を加算した結果に変換します。

期間の単位はday, month, yearです。

FROM_THISWEEK(数字, 期間の単位) field_6_ < FROM_THISWEEK("7", "day")

APIを実行した週の日曜日を基準とし、指定した期間を加算した結果に変換します。

期間の単位はday, month, yearです。

FROM_THISMONTH(数字, 期間の単位) field_6_ < FROM_THISMONTH("1", "month")

APIを実行した月の1日を基準とし、指定した期間を加算した結果に変換します。

期間の単位はday, month, yearです。

FROM_THISYEAR(数字, 期間の単位) field_6_ < FROM_THISYEAR("-1", "year")

APIを実行した年の1月1日を基準とし、指定した期間を加算した結果に変換します。

期間の単位はday, month, yearです。

フィールド毎の利用可能な演算子と関数一覧

フィールド 演算子 関数
text = != like not like

TODAY()

FROM_TODAY()

FROM_THISWEEK()

FROM_THISMONTH()

FROM_THISYEAR()

textarea = != like not like

TODAY()

FROM_TODAY()

FROM_THISWEEK()

FROM_THISMONTH()

FROM_THISYEAR()

number = != > < >= <=
date = != > < >= <=

TODAY()

FROM_TODAY()

FROM_THISWEEK()

FROM_THISMONTH()

FROM_THISYEAR()

datetime = != > < >= <=

TODAY()

FROM_TODAY()

FROM_THISWEEK()

FROM_THISMONTH()

FROM_THISYEAR()

time = != > < >= <=
radio in not in
dropdown in not in
checkbox in not in
file like not like
user in not in

LOGIN_USER

department in not in
group in not in
lookup = != like not like match not match
postalcode like not like
address = != like not like
color = !=
canvas = !=
id = != > < >= <=
autonumber = != > < >= <= like not like
creator in not in

LOGIN_USER

createdtime = != > < >= <=

TODAY()

FROM_TODAY()

FROM_THISWEEK()

FROM_THISMONTH()

FROM_THISYEAR()

modifier in not in

LOGIN_USER

modifiedtime = != > < >= <=

TODAY()

FROM_TODAY()

FROM_THISWEEK()

FROM_THISMONTH()

FROM_THISYEAR()

userフィールドの検索値の指定について

userフィールドはuserIDの他に、特定の組織やグループに所属しているユーザーも検索出来るようになっています。

IDを指定する際には、対象を明示する必要があるので、各IDの先頭に識別文字を追加します。

サンプル 1

ユーザーIDが"2"のユーザーが含まれているレコードを取得する。

field_1_ in ("u2")
サンプル 2

ユーザーIDが"2"のユーザーか組織IDが"3"の組織に所属するユーザーが含まれているレコードを取得する。

field_1_ in ("u2", "d3")
サンプル 3

ユーザーIDが"2"のユーザーかグループIDが"5"のグループに所属するユーザーが含まれているレコードを取得する。

field_1_ in ("u2", "g5")

識別文字がない場合はユーザーIDを検索対象とします。