仅返回连接表中具有最新日期的行

灾难小子

通过运行以下查询,我意识到我在列上有重复项QueryExecutionId

SELECT DISTINCT qe.QueryExecutionid AS QueryExecutionId,
    wfi.workflowdefinitionid AS FlowId,
    qe.publishing_date AS [Date],
    c.typename AS [Type],
    c.name As Name
INTO #Send
FROM
    [QueryExecutions] qe  
    JOIN [Campaign] c ON qe.target_campaign_id = c.campaignid
    LEFT JOIN [WorkflowInstanceCampaignActivities] wfica ON wfica.queryexecutionresultid = qe.executionresultid
    LEFT JOIN [WorkflowInstances] wfi ON wfica.workflowinstanceid = wfi.workflowinstanceid
WHERE qe.[customer_idhash] IS NOT NULL;

例如,当我使用这些 QueryExecutionIds 之一进行测试时,我可以得到两个结果

select * from ##Send
where QueryExecutionId = 169237

我们意识到原因是这两行有不同的FlowId(第一个查询中的第二个返回值)。在讨论了这个问题之后,我们决定使用FlowId具有最新日期的记录该日期是一个名为的列lastexecutiontime,位于第三个连接表中[WorkflowInstances],该表也是 FlowId 来自的表。

如何仅获取QueryExecutionId具有最新WorkflowInstances.lastexecution时间值的唯一值并删除重复项?

佐哈尔·佩莱德

您可以使用以下方式first_value分区的派生表workflowinstanceidlastexecutiontime desc

SELECT DISTINCT qe.QueryExecutionid AS QueryExecutionId,
    wfi.FlowId,
    qe.publishing_date AS [Date],
    c.typename AS [Type],
    c.name As Name
INTO #Send
FROM
    [QueryExecutions] qe  
    JOIN [Campaign] c ON qe.target_campaign_id = c.campaignid
    LEFT JOIN [WorkflowInstanceCampaignActivities] wfica ON wfica.queryexecutionresultid = qe.executionresultid
    LEFT JOIN 
    (
        SELECT DISTINCT workflowinstanceid, FIRST_VALUE(workflowdefinitionid) OVER(PARTITION BY workflowinstanceid ORDER BY lastexecutiontime DESC) As FlowId
        FROM [WorkflowInstances]
    ) wfi ON wfica.workflowinstanceid = wfi.workflowinstanceid
WHERE qe.[customer_idhash] IS NOT NULL;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SQL合并3个表并仅获取具有最新日期的行

来自分类Dev

从具有最新日期的两个表中检索连接数据

来自分类Dev

MySQL,从表中获取具有2个不同列的最新日期的行

来自分类Dev

MySQL,从表中获取具有2个不同列的最新日期的行

来自分类Dev

如何获取仅具有最新日期的查询结果?

来自分类Dev

从每组的3个表中选择具有最新日期的sql行

来自分类Dev

从两个联接表中选择具有最新日期而不重复的行?

来自分类Dev

SQL从表中获取最新日期以包含在具有内部联接的VIEW中

来自分类Dev

如何从连接表中获取最新日期

来自分类Dev

MongoDB:返回具有最新日期的嵌套数组中的对象

来自分类Dev

列出具有最新日期的行

来自分类Dev

如何选择具有最新日期和时间的行

来自分类Dev

在MySQL中如何使用SQL获取具有最新日期的行

来自分类Dev

选择一列中具有最新日期的行

来自分类Dev

仅从数据库获取最新日期(但获取具有该最新日期的所有行)

来自分类Dev

获取具有最新日期的对象

来自分类Dev

当T-SQL中的另一行<>'X'时,检索具有最新日期的数据行

来自分类Dev

有一个带有pcode的表,在不同的行中有许多日期。如何仅选择Pcode的最新日期

来自分类Dev

如何仅加入具有最新日期的不同项目

来自分类Dev

保留具有最新日期的行以匹配 ID。删除所有具有旧日期的行以匹配 ID

来自分类Dev

SQL查询返回最新日期以及表中的其他信息

来自分类Dev

在JPA中选择具有1个条件的每个用户的最新日期的行

来自分类Dev

具有相同ID和最新日期的SQL concat行

来自分类Dev

访问-选择具有最新日期的唯一行

来自分类Dev

Qlikview表达式选择值具有参考行的最新日期

来自分类Dev

SQL - 如何从具有相同主键的组行中选择最新日期

来自分类Dev

如何从具有最新日期戳的JOIN中获取记录集?

来自分类Dev

mysql - 如何从以下结果中仅获取最新日期?

来自分类Dev

JS:如何获取具有最新日期的对象

Related 相关文章

  1. 1

    SQL合并3个表并仅获取具有最新日期的行

  2. 2

    从具有最新日期的两个表中检索连接数据

  3. 3

    MySQL,从表中获取具有2个不同列的最新日期的行

  4. 4

    MySQL,从表中获取具有2个不同列的最新日期的行

  5. 5

    如何获取仅具有最新日期的查询结果?

  6. 6

    从每组的3个表中选择具有最新日期的sql行

  7. 7

    从两个联接表中选择具有最新日期而不重复的行?

  8. 8

    SQL从表中获取最新日期以包含在具有内部联接的VIEW中

  9. 9

    如何从连接表中获取最新日期

  10. 10

    MongoDB:返回具有最新日期的嵌套数组中的对象

  11. 11

    列出具有最新日期的行

  12. 12

    如何选择具有最新日期和时间的行

  13. 13

    在MySQL中如何使用SQL获取具有最新日期的行

  14. 14

    选择一列中具有最新日期的行

  15. 15

    仅从数据库获取最新日期(但获取具有该最新日期的所有行)

  16. 16

    获取具有最新日期的对象

  17. 17

    当T-SQL中的另一行<>'X'时,检索具有最新日期的数据行

  18. 18

    有一个带有pcode的表,在不同的行中有许多日期。如何仅选择Pcode的最新日期

  19. 19

    如何仅加入具有最新日期的不同项目

  20. 20

    保留具有最新日期的行以匹配 ID。删除所有具有旧日期的行以匹配 ID

  21. 21

    SQL查询返回最新日期以及表中的其他信息

  22. 22

    在JPA中选择具有1个条件的每个用户的最新日期的行

  23. 23

    具有相同ID和最新日期的SQL concat行

  24. 24

    访问-选择具有最新日期的唯一行

  25. 25

    Qlikview表达式选择值具有参考行的最新日期

  26. 26

    SQL - 如何从具有相同主键的组行中选择最新日期

  27. 27

    如何从具有最新日期戳的JOIN中获取记录集?

  28. 28

    mysql - 如何从以下结果中仅获取最新日期?

  29. 29

    JS:如何获取具有最新日期的对象

热门标签

归档