当前位置: 首页 > news >正文

规则引擎中复合变量的深度解析:从数据库查询到业务规则落地的全链路攻略

复合变量

什么是复合变量?这里我们可以简单理解为,复合变量可以想成 一张经过加工后的数据表(多行数据),这里复合变量就是通过对一个数据库的表进行查询,做了相应的数据过滤,然后获得的数据结果,那么这个变量中就表示了多行数据

如上图所示,这个变量获取的方式是来源于数据库的数据查询,然后在界面上通过流程化的数据加工(过滤、关联、转换等操作),然后把需要的多行数据放入到变量之中。

那么这种复合变量如何使用呢?

以JVS规则引擎为例。

  • 我们可以把这种变量作为明细查询的数据,通过规则的结果值返给业务端,如下图所示

  • 也可以对变量内部数据字段值进行直接提取,通过一个基础变量来直接获取对应字段值的第一条数据值,以便用于规则的判断,具体直接选择对应字段即可。可选择一个或多个。

  • 复合变量的加工方式,如下图所示,包括数据数据过滤、多表关联、数据分组汇总等等各种操作

①:各种数据加工的算子

②:通过流程化、拖拽化的方式,把各种算子链接起来,实现各种多行数据的加工处理,包括数据的增删改查、数据的跨库、跨API等各种加工操作

③:对不同算子的具体的配置操作

  • 我们还可以对该复合变量进行一个聚合配置,在输出节点下进行聚合配置。选择相关需聚合的字段,即可统计条数。其中如果字段类型为字符串,则聚合时为计数和去重计数。如果是数字类型则有最大、最小、平均值等这些选项。详情如下

用的时候可以用一个基础变量进行存放,选择【其他变量】里的【复合变量(聚合)】,找到对应的复合变量名称。最后就会统计出满足条件的条数。

在线demo:https://rules.bctools.cn

基础框架开源地址:https://gitee.com/software-minister/jvs

http://www.dtcms.com/a/240166.html

相关文章:

  • JavaSec-其他漏洞
  • SpringBoot 框架第 1 次接口调用慢
  • 使用homeassistant 插件将tasmota 接入到米家
  • Spring Boot 3+:现代Java应用开发的新标杆
  • 【C++特殊工具与技术】优化内存分配(四):定位new表达式、类特定的new、delete表达式
  • 可视化预警系统:如何实现生产风险的实时监控?
  • AlgorithmVisualizer项目改进与部署-网页算法可视化
  • ChatGPT 辅助 PyTorch 开发:从数据预处理到 CNN 图像识别的全流程优化
  • 对比一下blender快捷键:p和alt+p
  • k8s从入门到放弃之Service负载均衡
  • 【C/C++】玩转正则表达式
  • 对象回调初步研究
  • MySQL中【正则表达式】用法
  • Web中间件--tomcat学习
  • Python如何给视频添加音频和字幕
  • ui框架-文件上传组件
  • 在鸿蒙HarmonyOS 5中使用DevEco Studio实现指南针功能
  • 门静脉高压——治疗
  • 智能体革命:企业如何构建自主决策的AI代理?
  • 魔兽世界正式服插件与宏-敏锐盗贼实用宏探索(1)-宏命令制作入门与基本知识
  • C++--stack和queue的使用及其模拟实现
  • CppCon 2015 学习:Reactive Stream Processing in Industrial IoT using DDS and Rx
  • 脚本安装Doris2.10和Doris Manager
  • 什么是OLAP?OLAP具体有哪些应用?
  • 前缀和题目:寻找数组的中心下标
  • 使用VMware克隆功能快速搭建集群
  • Linux od命令
  • 火绒弹窗拦截6.0.6.1\5.0.77.1绿色独立版_WinAll
  • 6.9-QT模拟计算器
  • 封装技术生命周期 从CDIP到CSP到SiP先进封装