Bỏ qua, đến nội dung

Cấu hình node - Aggregate

Node tính toán tổng hợp (count, sum, avg, min, max) trên collection dữ liệu, thực thi ở tầng SQL để đảm bảo hiệu suất.

Bảng tham số cấu hình

Tham sốKiểuBắt buộcMặc địnhMô tả
collectionstringCollection cần tính toán tổng hợp
aggregatorstringPhép tính: count, sum, avg, min, max
fieldstringĐiều kiệnField tính toán (bắt buộc với sum, avg, min, max; không cần với count)
filterobjectKhông{}Điều kiện lọc dữ liệu trước khi tính
associatedbooleanKhôngfalseTính trên dữ liệu association thay vì toàn bộ collection
paramsobjectKhông{}Tham số bổ sung cho query

Dữ liệu đầu vào (Input)

TênKiểuMô tả
collectionstringTên collection nguồn
filterobjectĐiều kiện lọc (hỗ trợ biến workflow trong filter)

Dữ liệu đầu ra (Output)

TênKiểuMô tả
resultnumberGiá trị tổng hợp
dataTypestringKiểu dữ liệu kết quả: integer hoặc double

Chi tiết các phép tính

Phép tínhÝ nghĩaYêu cầu fieldKết quả khi không có dữ liệu
countĐếm số bản ghiKhông0
sumTổng giá trịCó (kiểu số)0
avgTrung bình cộngCó (kiểu số)null
minGiá trị nhỏ nhấtnull
maxGiá trị lớn nhấtnull

Lưu ý quan trọng

  • Với count, không cần chỉ định field - đếm tất cả bản ghi khớp filter
  • Filter hỗ trợ tất cả toán tử: $eq, $gt, $lt, $in, $contains, ...
  • Filter có thể sử dụng biến từ node trước (biến động)
  • Kết quả avg trả về kiểu double, các phép tính khác trả về integer (trừ sum trên field decimal)
  • Phép tính thực thi ở tầng SQL (database aggregate function), không load dữ liệu vào memory
  • Khi associated: true, tính toán trên dữ liệu quan hệ (hasMany, belongsToMany) của bản ghi hiện tại