开发者社区> 问答> 正文

flink sql 中怎么把ROW类型转换成INT?

用.访问成功了,不过报了另外一个错误: offset (0) + length (4) exceed the capacity of the array: 2 这个错误提示 是不是 hbase取出来的int类型, 用users.addColumn("cf", "age", classOf[Integer]) 来转换是不是不对, 怎么把int转换成Integer呢或者把Integer转换成int

*来自志愿者整理的flink邮件归档

展开
收起
游客nnqbtnagn7h6s 2021-12-06 19:59:08 1177 0
1 条回答
写回答
取消 提交回答
  •      Hbase connector中,除 rowkey 字段外,所有列簇 在FLINK中对应的类型都是 符合类型ROW(),这是因为ROW中可以包括多个 field 能够和 hbase 中的一个列簇可以包含多个列很好地对应。贴个文档,你一看就懂:

    CREATE TABLE hTable (  rowkey INT,  family1 ROW<q1 INT>,  family2 ROW<q2 STRING, q3 BIGINT>,  family3 ROW<q4 DOUBLE, q5 BOOLEAN, q6 STRING>,  PRIMARY KEY (rowkey) NOT ENFORCED ) WITH (...);   -- scan data from the HBase table SELECT rowkey, family1.q1, family3.q4, family3.q6 FROM hTable;  

    这个文档正在编写当中,很快就可以在官网上看到。

    *来自志愿者整理的flink邮件归档

    2021-12-06 21:27:13
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Flink CDC Meetup PPT - 龚中强 立即下载
Flink CDC Meetup PPT - 王赫 立即下载
Flink CDC Meetup PPT - 覃立辉 立即下载