首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Azure Stream Analytics -识别多个数据集的公共数据

Azure Stream Analytics -识别多个数据集的公共数据
EN

Stack Overflow用户
提问于 2021-09-22 04:29:41
回答 1查看 29关注 0票数 1

我是从多个来源捕获数据与Azure事件中心和发送到。这些源有一些共同的数据点。例:

  • 资料来源1: PNR编号
  • 资料来源2: PNR编号

如何在这些多个数据集中识别公共数据?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-22 16:12:33

据我所知,多个来源都是在一个事件中心摄取的?我猜想有一个字段SourceId允许识别数据点来自哪里?

如果是这样的话,您可以使用通用表表达式(WITH)对这些源进行范围分析,并在它们之间使用加入

代码语言:javascript
运行
复制
WITH 
  SourceA AS (
    SELECT * FROM Input WHERE SourceId = 'A'
  ),
  SourceB AS (
    SELECT * FROM Input WHERE SourceId = 'B'
  )

SELECT
  A.*,
  B.*
FROM A
LEFT JOIN B 
  ON A.[Pnr NO] = B.[Pnr NO]
  AND DATEDIFF(second,A,B) BETWEEN 0 AND 60

注意,这不是一个通用的模式。它解决了一个特定的业务问题,在这个问题中,我们需要在B (FROM A LEFT JOIN B)中为A找到一个匹配事件,这在接下来的60秒(DATEDIFF(second,A,B) BETWEEN 0 AND 60)中发生。

这里有要应用的很多不同的模式,这取决于您要构建的特定场景。对于一些人来说,应该使用分析函数(如最后的)而不是联接。

如果你详细说明你的需要,我也许能找到正确的模式。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69278204

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档