0

我对 KSQL 很陌生,只是想知道如何提取今天的数据进行聚合?假设我有以下模式的计数数据流:

Field     | Type
-----------------------------
 ROWTIME   | BIGINT
 ROWKEY    | VARCHAR(STRING)
 TS        | BIGINT
 COUNT     | BIGINT

如何使用 KSQL 创建一个表,该表将输出今天 UNIX 时间戳COUNT在哪里的总和的快照?TS

4

1 回答 1

2

您可以使用TIMESTAMPTOSTRINGudf 将TS值更改为所需的日期格式,然后执行求和。这是执行此操作的一种方法:

CREATE STREAM mystream1 AS SELECT TIMESTAMPTOSTRING(TS, 'yyyy-MM-dd') AS TS, COUNT_VAL FROM mystream;

SELECT TS, sum(COUNT_VAL) FROM mystream1 GROUP BY TS;

您可能想要重命名COUNT流中的列,因为它是 KSQL 中的函数名称。如果要在窗口上执行此操作,也可以添加 WINDOW。

于 2017-11-20T07:22:08.940 回答