フィルター演算子
Repository の find、findOne、findAndCount、count といったAPIの filter パラメーターで使用します。
JSON形式に対応するため、NocoBaseではクエリ演算子を$プレフィックス付きの文字列として識別します。
また、NocoBaseでは演算子を拡張するためのAPIも提供しています。詳細はdb.registerOperators()をご覧ください。
一般的な演算子
$eq
フィールドの値が指定された値と等しいかどうかを判定します。SQLの=に相当します。
例
title: '春秋' と同じ意味です。
$ne
フィールドの値が指定された値と等しくないかどうかを判定します。SQLの!=に相当します。
例
$is
フィールドの値が指定された値であるかどうかを判定します。SQLのISに相当します。
例
$not
フィールドの値が指定された値ではないかどうかを判定します。SQLのIS NOTに相当します。
例
$col
フィールドの値が別のフィールドの値と等しいかどうかを判定します。SQLの=に相当します。
例
$in
フィールドの値が指定された配列に含まれているかどうかを判定します。SQLのINに相当します。
例
$notIn
フィールドの値が指定された配列に含まれていないかどうかを判定します。SQLのNOT INに相当します。
例
$empty
一般的なフィールドが空であるかどうかを判定します。文字列フィールドの場合は空文字列、配列フィールドの場合は空配列であるかを判定します。
例
$notEmpty
一般的なフィールドが空ではないかどうかを判定します。文字列フィールドの場合は空文字列ではないか、配列フィールドの場合は空配列ではないかを判定します。
例
論理演算子
$and
論理AND。SQLのANDに相当します。
例
$or
論理OR。SQLのORに相当します。
例
ブール型フィールド演算子
type: 'boolean' のブール型フィールドで使用します。
$isFalsy
ブール型フィールドの値が偽であるかどうかを判定します。フィールドの値がfalse、0、NULLのいずれかである場合、$isFalsy: trueと判定されます。
例
$isTruly
ブール型フィールドの値が真であるかどうかを判定します。フィールドの値がtrueまたは1である場合、$isTruly: trueと判定されます。
例
数値型フィールド演算子
以下の数値型フィールドで使用します。
type: 'integer'type: 'float'type: 'double'type: 'real'type: 'decimal'
$gt
フィールドの値が指定された値より大きいかどうかを判定します。SQLの>に相当します。
例
$gte
フィールドの値が指定された値以上であるかどうかを判定します。SQLの>=に相当します。
例
$lt
フィールドの値が指定された値未満であるかどうかを判定します。SQLの<に相当します。
例
$lte
フィールドの値が指定された値以下であるかどうかを判定します。SQLの<=に相当します。
例
$between
フィールドの値が指定された2つの値の間にあるかどうかを判定します。SQLのBETWEENに相当します。
例
$notBetween
フィールドの値が指定された2つの値の間にないかどうかを判定します。SQLのNOT BETWEENに相当します。
例
文字列型フィールド演算子
string を含む文字列型フィールドで使用します。
$includes
文字列フィールドが指定された部分文字列を含むかどうかを判定します。
例
$notIncludes
文字列フィールドが指定された部分文字列を含まないかどうかを判定します。
例
$startsWith
文字列フィールドが指定された部分文字列で始まるかどうかを判定します。
例
$notStartsWith
文字列フィールドが指定された部分文字列で始まらないかどうかを判定します。
例
$endsWith
文字列フィールドが指定された部分文字列で終わるかどうかを判定します。
例
$notEndsWith
文字列フィールドが指定された部分文字列で終わらないかどうかを判定します。
例
$like
フィールドの値が指定された文字列を含むかどうかを判定します。SQLのLIKEに相当します。
例
$notLike
フィールドの値が指定された文字列を含まないかどうかを判定します。SQLのNOT LIKEに相当します。
例
$iLike
フィールドの値が指定された文字列を大文字・小文字を区別せずに含むかどうかを判定します。SQLのILIKEに相当します(PostgreSQLのみ対応)。
例
$notILike
フィールドの値が指定された文字列を大文字・小文字を区別せずに含まないかどうかを判定します。SQLのNOT ILIKEに相当します(PostgreSQLのみ対応)。
例

