代码拉取完成,页面将自动刷新
Reactor + JSqlParser = ReactorQL
select name username from user
.count
,sum
,avg
,max
,min
.select val/100 percent from cpu_usage
.select sum(val) sum from topic group by interval('10s')
. 按时间分组.select count(1) total,productId,deviceId from messages group by productId,deviceId
.select avg(temp) avgTemp from temps group by interval('10s') having avgTemp>10
.select case type when 1 then '警告' when 2 then '故障' else '其他' end type from topic
.select t1.name,t2.detail from t1,t2 where t1.id = t2.id
.引入依赖
<dependency>
<groupId>org.jetlinks</groupId>
<artifactId>reactor-ql</artifactId>
<version>{version}</version>
</dependency>
用例:
ReactorQL.builder()
.sql("select avg(this) total from test group by interval('1s') having total > 2") //按每秒分组,并计算流中数据平均值,如果平均值大于2则下游收到数据.
.build()
.start(Flux.range(0, 10).delayElements(Duration.ofMillis(500)))
.doOnNext(System.out::println)
.as(StepVerifier::create)
.expectNextCount(4)
.verifyComplete();
更多用法请看 单元测试
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。