【问题标题】:How to use string array field in Kafka ksql如何在Kafka ksql中使用字符串数组字段
【发布时间】:2022-12-24 08:39:36
【问题描述】:

在创建 users 流后,其 interests 字段作为字符串数组 ARRAY<STRING> 数据类型:

CREATE STREAM users
  (userid VARCHAR,
   interests ARRAY<STRING>)
  WITH (KAFKA_TOPIC = 'users',
        VALUE_FORMAT='JSON');

我继续插入第一个用户数据:

INSERT INTO users (userid, interests) VALUES ('user0001', ['music','sport'])

不幸的是,此插入语句因错误而失败

line 1:60: extraneous input '[' expecting {'(', 'STRING'...

我试图用 () 替换方括号 [] 为:

INSERT INTO users (userid, interests) VALUES ('user0001', ('music','sport'))

但它也失败了。

如何修复此错误?有没有办法使用字符串数组数据类型存储字符串数组['music','sport']

【问题讨论】:

    标签: apache-kafka ksqldb


    【解决方案1】:

    您必须使用 ARRAY 函数:

    https://docs.ksqldb.io/en/latest/developer-guide/ksqldb-reference/scalar-functions/#array

    INSERT INTO users (userid, interests) VALUES ('user0001', ARRAY['music','sport']);
    

    【讨论】:

      猜你喜欢
      • 2019-03-12
      • 1970-01-01
      • 1970-01-01
      • 2021-11-10
      • 2018-11-28
      • 2020-05-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多