クエリの書き方
条件を絞り込むクエリで利用できる演算子/関数/オプションです。
演算子/関数/オプションは組み合わせて使用できます。
クエリの記述例は
サンプルクエリ を参照してください。
演算子
「フィールドコード 演算子 値」のように記述します。
演算子 | 例 | 説明 |
---|---|---|
= |
文字列_0 = "テスト" |
演算子の前に指定したフィールドコードの値と演算子の後に指定した値が一致する |
!= |
文字列_0 != "テスト" |
演算子の前に指定したフィールドコードの値と演算子の後に指定した値が異なる |
> |
数値_0 > 10 |
演算子の前に指定したフィールドコードの値が、演算子の後に指定した値より大きい |
< |
数値_0 < 10 |
演算子の前に指定したフィールドコードの値が、演算子の後に指定した値より小さい |
>= |
数値_0 >= 10 |
演算子の前に指定したフィールドコードの値が、演算子の後に指定した値以上である |
<= |
数値_0 <= 10 |
演算子の前に指定したフィールドコードの値が、演算子の後に指定された値以下である |
in |
ドロップダウン_0 in ("A", "B") |
演算子の前に指定したフィールドコードの値が、演算子の後の括弧内に列挙した文字列のいずれかと一致する |
not in |
ドロップダウン_0 not in ("A", "B") |
演算子の前に指定したフィールドコードの値が、演算子の後の括弧内に列挙した文字列と一致しない |
like |
文字列_0 like "テスト" |
演算子の前に指定したフィールドコードの値が、演算子の後に指定した値を含む 判定するフィールドの型が添付ファイルの場合、ファイル名とファイルの内容が判定の対象になります。 like 演算子で使用できない記号は、 検索や絞り込みで使用できない記号はありますか? |
not like |
文字列_0 not like "テスト" |
演算子の前に指定したフィールドコードの値が、演算子の後に指定した値を含まない like 演算子で使用できない記号は、 検索や絞り込みで使用できない記号はありますか? |
or |
数値_0 < 10 or 数値_0 > 20 |
上述の演算子を使用した2つの条件式の論理和 |
and |
数値_0 >= 10 and 数値_0 <= 20 |
上述の演算子を使用した2つの条件式の論理積 |
補足
- テーブル内のフィールド、および関連レコードのフィールドをクエリに含める場合、
=
や!=
演算子の代わりに、in
やnot in
演算子を使ってください。 - クエリで文字列検索する場合は単語検索です。詳しくは
検索キーワードに関する注意
を参照してください。
関数
関数名 | 例 | 説明 |
---|---|---|
LOGINUSER() |
作成者 in (LOGINUSER()) |
API を実行したユーザー |
PRIMARY_ORGANIZATION() |
組織 in (PRIMARY_ORGANIZATION()) |
API を実行したユーザーの優先する組織 API を実行したユーザーに優先する組織が設定されていない場合、 組織 in (PRIMARY_ORGANIZATION()) の条件は無視され、それ以外の絞り込み条件を満たすすべてのレコードが取得されます。 |
NOW() |
作成日時 = NOW() |
API を実行した日時 |
TODAY() |
作成日時 = TODAY() |
API を実行した日 |
YESTERDAY() |
作成日時 = YESTERDAY() |
API を実行した日の前日 |
TOMORROW() |
日時 = TOMORROW() |
API を実行した日の翌日 |
FROM_TODAY(数字, 期間の単位) |
作成日時 < FROM_TODAY(5, DAYS) |
API を実行した日から起算した期間 期間の単位に指定可能な文字列は次のとおりです。
|
THIS_WEEK(曜日) |
作成日時 = THIS_WEEK() |
API を実行した週 引数に次の値を指定することで、曜日を指定できます。
|
LAST_WEEK(曜日) |
作成日時 = LAST_WEEK() |
API を実行した週の前週 引数に THIS_WEEK() と同じ値を指定することで、曜日を指定できます。引数を指定しない場合は、前週のすべての日が対象です。 |
NEXT_WEEK(曜日) |
日時 = NEXT_WEEK() |
API を実行した週の翌週 引数に THIS_WEEK() と同じ値を指定することで、曜日を指定できます。引数を指定しない場合は、翌週のすべての日が対象です。 |
THIS_MONTH(数値またはフォーマット文字) |
作成日時 = THIS_MONTH() |
API を実行した月 引数に次の値を指定することで、日付を指定できます。
指定した日付が存在しない場合は、API を実行した月の翌月1日で計算されます。 |
LAST_MONTH(数値またはフォーマット文字) |
作成日時 = LAST_MONTH() |
API を実行した月の前月 引数に次の値を指定することで、日付を指定できます。
指定した日付が存在しない場合は、API を実行した月の翌月1日で計算されます。 |
NEXT_MONTH(数値またはフォーマット文字) |
作成日時 = NEXT_MONTH() |
API を実行した月の翌月 引数に次の値を指定することで、日付を指定できます。
指定した日付が存在しない場合は、API を実行した月の翌々月1日で計算されます。 |
THIS_YEAR() |
作成日時 = THIS_YEAR() |
API を実行した年 |
LAST_YEAR() |
作成日時 = LAST_YEAR() |
API を実行した年の前年 |
NEXT_YEAR() |
日時 = NEXT_YEAR() |
API を実行した年の翌年 |
オプション
オプション | 例 | 説明 |
---|---|---|
order by | order by 更新日時 asc |
レコードを取得する順番 本オプションに続けて指定したフィールドコードの値で並び替えられます。 フィールドコードの後に asc を指定すると昇順、desc を指定すると降順で並び替えられます。複数の項目で並び替える場合、「フィールドコード 並び順」をカンマ区切りで指定します。 例: order by フィールドコード1 desc, フィールドコード2 asc 省略すると、レコード ID の降順で並び替えされます。 order by で指定できるフィールドには制限があります。詳しくは
ソートで選択できるフィールド
|
limit | limit 20 |
取得するレコード数 たとえば limit 20 を指定すると、レコード先頭から 20 件のレコードを取得します。0 から 500 までの数値を指定できます。 省略すると、100 が設定されます。 |
offset | offset 30 |
取得をスキップするレコード数 たとえば offset 30 を指定すると、レコード先頭から 30 番目までのレコードは取得せず、31 番目のレコードから取得します。0 から 10,000 までの数値を指定できます。 省略すると、0 が設定されます。 |
フィールド、システム識別子ごとの利用可能な演算子と関数一覧
フィールドまたはシステム識別子 | 利用可能な関数 | |
---|---|---|
レコード番号 | = != > < >= <= in not in |
なし |
$id | = != > < >= <= in not in |
なし |
作成者 | in not in |
LOGINUSER() |
作成日時 | = != > < >= <= |
NOW() TODAY() YESTERDAY() TOMORROW() FROM_TODAY() THIS_WEEK() LAST_WEEK() NEXT_WEEK() THIS_MONTH() LAST_MONTH() NEXT_MONTH() THIS_YEAR() LAST_YEAR() NEXT_YEAR() |
更新者 | in not in |
LOGINUSER() |
更新日時 | = != > < >= <= |
NOW() TODAY() YESTERDAY() TOMORROW() FROM_TODAY() THIS_WEEK() LAST_WEEK() NEXT_WEEK() THIS_MONTH() LAST_MONTH() NEXT_MONTH() THIS_YEAR() LAST_YEAR() NEXT_YEAR() |
文字列(1行) | = != in not in like not like |
なし |
リンク | = != in not in like not like |
なし |
数値 | = != > < >= <= in not in |
なし |
計算 | = != > < >= <= in not in |
なし |
文字列(複数行) | like not like |
なし |
リッチエディター | like not like |
なし |
チェックボックス | in not in |
なし |
ラジオボタン | in not in |
なし |
ドロップダウン | in not in |
なし |
複数選択 | in not in |
なし |
添付ファイル | like not like |
なし |
日付 | = != > < >= <= |
TODAY() YESTERDAY() TOMORROW() FROM_TODAY() THIS_WEEK() LAST_WEEK() NEXT_WEEK() THIS_MONTH() LAST_MONTH() NEXT_MONTH() THIS_YEAR() LAST_YEAR() NEXT_YEAR() |
時刻 | = != > < >= <= |
なし |
日時 | = != > < >= <= |
NOW() TODAY() YESTERDAY() TOMORROW() FROM_TODAY() THIS_WEEK() LAST_WEEK() NEXT_WEEK() THIS_MONTH() LAST_MONTH() NEXT_MONTH() THIS_YEAR() LAST_YEAR() NEXT_YEAR() |
ユーザー選択 | in not in |
LOGINUSER() |
組織選択 | in not in |
PRIMARY_ORGANIZATION() |
グループ選択 | in not in |
なし |
ステータス | = != in not in |
なし |
ルックアップ | ルックアップ元のフィールドタイプと同じ | ルックアップ元のフィールドタイプと同じ |
関連レコード | 参照するアプリのフィールドタイプと同じ | 参照するアプリのフィールドタイプと同じ |
グループ | なし | なし |
カテゴリー | なし | なし |
エスケープ処理
次のフィールドの値に、"
(ダブルクオート)やバックスラッシュ \
(バックスラッシュ)を含む場合、エスケープが必要です。
- 文字列(1 行)
- 文字列(複数行)
- リッチエディター
- チェックボックス
- ラジオボタン
- ドロップダウン
- 複数選択
- ステータス
エスケープの例
チェックボックス(フィールドコード:Checkbox
)について、"
や \
を含む値をエスケープする例です。
|
|
kintone REST API リクエストを送信する API のように、リクエストボディとして JSON 文字列を指定する場合は、次のようにエスケープします。
|
|
|
|
サンプルクエリ
文字列(1行)の値を指定する
文字列を完全一致で指定する場合は、=
演算子を使用します。
|
|
文字列を部分一致で指定する場合は、like
演算子を使用します。
|
|
ドロップダウンの値を指定する
ドロップダウンフィールドの値を指定する場合は、in
または not in
演算子を使用します。
in
または not in
演算子を使用するときは、値を ()
で囲う必要があります。
|
|
|
|
次のフィールドは、ドロップダウンと同じく in
や not in
演算子を使用してレコードを取得できます。
- チェックボックス
- ラジオボタン
- 複数選択
日付フィールドの値を指定する
日付フィールドでは、範囲を指定して絞り込みを行うことができます。
|
|
複数の条件を指定する際には and
演算子を使って式をつなげていきます。
レコード番号フィールドの値を指定する
絞り込み条件と order by
でレコード番号のフィールドコードを指定する代わりに、$id
でレコード番号フィールドを指定できます。
関連レコード一覧内のレコード番号フィールドを指定する場合、 関連レコード一覧のフィールドコード.$id
と指定します。
関連レコードに含まれるフィールドの値を指定する
関連レコードに含まれるフィールドを条件として含める場合、次のような形式でフィールドを指定します。
|
|
関連レコードに含まれるフィールドの値を指定する例です。
|
|
テーブル内のフィールドの値を取得する
テーブル内のフィールドを取得する場合は、=
や !=
演算子が使えません。
in
または not in
演算子を使う必要があります。
たとえば、日時フィールドは =
や !=
演算子を利用できますが、テーブル内の日時フィールドでは in
や not in
を使用します。
|
|
複数のフィールドや条件の指定
and
または or
演算子を使って複数の条件を指定できます。
|
|
order by
を使用した条件の指定
order by
または limit``offset
オプションを使うと、取得するレコードの並びや個数を指定できます。
|
|
式のグループ化
複数のフィールドに対して複数の条件を指定する場合は、式を丸括弧 ()
で囲ってグループ化します。
グループ化を行うことにより、より詳細な条件を指定できます。
|
|