Filter Operators
Dùng trong tham số filter của các API như find, findOne, findAndCount, count của Repository:
Để hỗ trợ JSON hóa, NocoBase đánh dấu các toán tử truy vấn bằng chuỗi có tiền tố $.
Ngoài ra, NocoBase cũng cung cấp API mở rộng toán tử, xem chi tiết tại db.registerOperators().
Toán tử chung
$eq
Kiểm tra giá trị field có bằng giá trị chỉ định không. Tương đương với = trong SQL.
Ví dụ
Tương đương với title: 'Xuân Thu'.
$ne
Kiểm tra giá trị field có khác giá trị chỉ định không. Tương đương với != trong SQL.
Ví dụ
$is
Kiểm tra giá trị field có phải là giá trị chỉ định không. Tương đương với IS trong SQL.
Ví dụ
$not
Kiểm tra giá trị field có không phải là giá trị chỉ định không. Tương đương với IS NOT trong SQL.
Ví dụ
$col
Kiểm tra giá trị field có bằng giá trị của field khác không. Tương đương với = trong SQL.
Ví dụ
$in
Kiểm tra giá trị field có nằm trong mảng chỉ định không. Tương đương với IN trong SQL.
Ví dụ
$notIn
Kiểm tra giá trị field có không nằm trong mảng chỉ định không. Tương đương với NOT IN trong SQL.
Ví dụ
$empty
Kiểm tra field thông thường có rỗng không, nếu là field chuỗi thì kiểm tra có phải chuỗi rỗng không, nếu là field mảng thì kiểm tra có phải mảng rỗng không.
Ví dụ
$notEmpty
Kiểm tra field thông thường có không rỗng không, nếu là field chuỗi thì kiểm tra có khác chuỗi rỗng không, nếu là field mảng thì kiểm tra có khác mảng rỗng không.
Ví dụ
Toán tử logic
$and
Logic AND. Tương đương với AND trong SQL.
Ví dụ
$or
Logic OR. Tương đương với OR trong SQL.
Ví dụ
Toán tử cho field kiểu boolean
Dùng cho field kiểu boolean type: 'boolean'.
$isFalsy
Kiểm tra giá trị field boolean có là sai không. Giá trị field boolean là false, 0 và NULL đều được coi là $isFalsy: true.
Ví dụ
$isTruly
Kiểm tra giá trị field boolean có là đúng không. Giá trị field boolean là true và 1 đều được coi là $isTruly: true.
Ví dụ
Toán tử cho field kiểu số
Dùng cho field kiểu số, gồm:
type: 'integer'type: 'float'type: 'double'type: 'real'type: 'decimal'
$gt
Kiểm tra giá trị field có lớn hơn giá trị chỉ định không. Tương đương với > trong SQL.
Ví dụ
$gte
Kiểm tra giá trị field có lớn hơn hoặc bằng giá trị chỉ định không. Tương đương với >= trong SQL.
Ví dụ
$lt
Kiểm tra giá trị field có nhỏ hơn giá trị chỉ định không. Tương đương với < trong SQL.
Ví dụ
$lte
Kiểm tra giá trị field có nhỏ hơn hoặc bằng giá trị chỉ định không. Tương đương với <= trong SQL.
Ví dụ
$between
Kiểm tra giá trị field có nằm giữa hai giá trị chỉ định không. Tương đương với BETWEEN trong SQL.
Ví dụ
$notBetween
Kiểm tra giá trị field có không nằm giữa hai giá trị chỉ định không. Tương đương với NOT BETWEEN trong SQL.
Ví dụ
Toán tử cho field kiểu chuỗi
Dùng cho field kiểu chuỗi, gồm string.
$includes
Kiểm tra field chuỗi có chứa chuỗi con chỉ định không.
Ví dụ
$notIncludes
Kiểm tra field chuỗi có không chứa chuỗi con chỉ định không.
Ví dụ
$startsWith
Kiểm tra field chuỗi có bắt đầu bằng chuỗi con chỉ định không.
Ví dụ
$notStatsWith
Kiểm tra field chuỗi có không bắt đầu bằng chuỗi con chỉ định không.
Ví dụ
$endsWith
Kiểm tra field chuỗi có kết thúc bằng chuỗi con chỉ định không.
Ví dụ
$notEndsWith
Kiểm tra field chuỗi có không kết thúc bằng chuỗi con chỉ định không.
Ví dụ
$like
Kiểm tra giá trị field có chứa chuỗi chỉ định không. Tương đương với LIKE trong SQL.
Ví dụ
$notLike
Kiểm tra giá trị field có không chứa chuỗi chỉ định không. Tương đương với NOT LIKE trong SQL.
Ví dụ
$iLike
Kiểm tra giá trị field có chứa chuỗi chỉ định không, không phân biệt hoa thường. Tương đương với ILIKE trong SQL (chỉ áp dụng cho PG).
Ví dụ
$notILike
Kiểm tra giá trị field có không chứa chuỗi chỉ định không, không phân biệt hoa thường. Tương đương với NOT ILIKE trong SQL (chỉ áp dụng cho PG).
Ví dụ
$regexp
Kiểm tra giá trị field có khớp regex chỉ định không. Tương đương với REGEXP trong SQL (chỉ áp dụng cho PG).
Ví dụ
$notRegexp
Kiểm tra giá trị field có không khớp regex chỉ định không. Tương đương với NOT REGEXP trong SQL (chỉ áp dụng cho PG).
Ví dụ
$iRegexp
Kiểm tra giá trị field có khớp regex chỉ định không, không phân biệt hoa thường. Tương đương v ới ~* trong SQL (chỉ áp dụng cho PG).
Ví dụ
$notIRegexp
Kiểm tra giá trị field có không khớp regex chỉ định không, không phân biệt hoa thường. Tương đương với !~* trong SQL (chỉ áp dụng cho PG).
Ví dụ
Toán tử cho field kiểu ngày
Dùng cho field kiểu ngày type: 'date'.
$dateOn
Kiểm tra field ngày có nằm trong một ngày nào đó không.
Ví dụ
$dateNotOn
Kiểm tra field ngày có không nằm trong một ngày nào đó không.
Ví dụ
$dateBefore
Kiểm tra field ngày có trước một giá trị nào đó không. Tương đương với nhỏ hơn giá trị ngày được truyền vào.
Ví dụ
$dateNotBefore
Kiểm tra field ngày có không trước một giá trị nào đó không. Tương đương với lớn hơn hoặc bằng giá trị ngày được truyền vào.
Ví dụ
$dateAfter
Kiểm tra field ngày có sau một giá trị nào đó không. Tương đương với lớn hơn giá trị ngày được truyền vào.
Ví dụ
$dateNotAfter
Kiểm tra field ngày có không sau một giá trị nào đó không. Tương đương với nhỏ hơn hoặc bằng giá trị ngày được truyền vào.
Ví dụ
Toán tử cho field kiểu mảng
Dùng cho field kiểu mảng type: 'array'.
$match
Kiểm tra giá trị field mảng có khớp với giá trị trong mảng chỉ định không.
Ví dụ
$notMatch
Kiểm tra giá trị field mảng có không khớp với giá trị trong mảng chỉ định không.
Ví dụ
$anyOf
Kiểm tra giá trị field mảng có chứa bất kỳ giá trị nào trong mảng chỉ định không.
Ví dụ
$noneOf
Kiểm tra giá trị field mảng có không chứa bất kỳ giá trị nào trong mảng chỉ định không.
Ví dụ
$arrayEmpty
Kiểm tra field mảng có rỗng không.
Ví dụ
$arrayNotEmpty
Kiểm tra field mảng có không rỗng không.
Ví dụ
Toán tử cho field kiểu quan hệ
Dùng để kiểm tra quan hệ có tồn tại hay không, các kiểu field gồm:
type: 'hasOne'type: 'hasMany'type: 'belongsTo'type: 'belongsToMany'
$exists
Có dữ liệu quan hệ.
Ví dụ
$notExists
Không có dữ liệu quan hệ.
Ví dụ

