当前位置: 首页 > 知识库问答 >
问题:

如何使用多个连接密钥连接两个流

江洲
2023-03-14

下面的代码片段是从JoinedStreams的javadoc复制的

val one: DataStream[(String, Int)]  = ...
val two: DataStream[(String, Int)] = ...

val result = one.join(two)
    .where {t => ... }
    .equal {t => ... }
    .window(TumblingEventTimeWindows.of(Time.of(5, TimeUnit.SECONDS)))
    .apply(new MyJoinFunction())

这两个流仅基于一个键(通过< code>t =计算)进行连接

我会问我如何基于多个键进行连接,例如,one.a = two.a和one.b = two.b

共有2个答案

应嘉容
2023-03-14

通过在连接时使用KeySelector,可以生成一个元组来表示两个键。

毛缪文
2023-03-14

您的键选择器可以返回元组。,

.where {t => (t.a, t.b)}
.equals {t => (t.a, t.b)}
 类似资料:
  • 问题内容: 我有两个相等的大小。列表1由10个名称组成,列表2由其电话号码组成。 我想将姓名和号码合而为一。我该怎么做呢? 问题答案: 您可以用于将第二个列表的元素添加到第一个列表: 编辑: 根据上面的说明(“ 我想要新的Arraylist中具有名称和编号的单个String。 ”),您需要循环浏览第一个列表并将第二个列表中的项目追加到它。 像这样: 如果输入: 你会得到:

  • 这是我制作的hashmap(Ik它不是最好的,也没有太多的逻辑),我想知道如果用户输入像“DVIII”这样的数据,其中“d”的值为“500”,“viii”的值为“8”,然后将它们打印为DVIII=5008,那么如何连接hashmap的值

  • 问题内容: 有简单的解决方案,可通过串联两个或java 。由于是经常使用的。是否有任何简单的方法来连接两个? 这是我的想法: 它可以工作,但实际上可以转换为,然后再次转换回。 问题答案: 您可以使用协力让这件事没有任何自动装箱拆箱或完成。这是它的外观。 请注意,返回,然后将其与另一个串联,然后再收集到数组中。 这是输出。 [1、34、3、1、5]

  • 现在我正在使用Criteria Hibernate查询从员工表中查询所有记录,它工作正常。我需要将员工表与库表联接,其中库。Emp_Id=员工。Emp_id我是否需要从员工表中获取所有记录,并从库表中获取书名和结账日期,作为联接选择查询的一部分。我该怎么做?

  • > 帐户表:accountId(PK)电子邮件密码 account_profile表:accountId(PK)(fk到account)昵称 团体表:articleId(PK)accountId(fk to account)标题内容 现在我想要下面的JPQL是查询DSL代码 我有实体元模型-QAccount、QAccountProfile、QCommunity 此外,我必须通过分页获得结果,因此应