我对 KSQL 很陌生,只是想知道如何提取今天的数据进行聚合?假设我有以下模式的计数数据流:
Field | Type
-----------------------------
ROWTIME | BIGINT
ROWKEY | VARCHAR(STRING)
TS | BIGINT
COUNT | BIGINT
如何使用 KSQL 创建一个表,该表将输出今天 UNIX 时间戳COUNT
在哪里的总和的快照?TS
我对 KSQL 很陌生,只是想知道如何提取今天的数据进行聚合?假设我有以下模式的计数数据流:
Field | Type
-----------------------------
ROWTIME | BIGINT
ROWKEY | VARCHAR(STRING)
TS | BIGINT
COUNT | BIGINT
如何使用 KSQL 创建一个表,该表将输出今天 UNIX 时间戳COUNT
在哪里的总和的快照?TS
您可以使用TIMESTAMPTOSTRING
udf 将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。