【问题标题】:SQL Query; Exclude record if subrecord = criteriaSQL查询;如果子记录 = 条件则排除记录
【发布时间】:2017-07-13 14:34:45
【问题描述】:

我正在使用 Report Builder 生成有关事件记录的报告。每个事件记录都可以有一个或多个与之关联的分配记录。分配存储在不同的表(任务)中,并与父记录 ID(事件表)连接。

按照当前的配置,我会得到一份报告,其中显示符合我的标准的每个事件 ID 以及所有相关分配。

我想排除任何分配为“属性系统”的记录。如果我在声明中排除这些记录,我会得到所有符合我的其他条件的记录,但会排除对“Property Systems”的分配。

示例:如果记录 4 有 3 个与之关联的分配。如果其中任何一个分配(任务所有者)=“Property Systems”,我想排除整个记录。

我想知道如何排除整个记录,而不仅仅是我现在得到的作业。

 SELECT
  Incident.IncidentNumber
 ,Incident.Status
 ,Incident.CreatedDateTime
 ,Incident.OwnerTeam [Incident Owner]
 ,Incident.Service
 ,Task.AssignedDateTime
 ,Task.OwnerTeam [Task Owner]
 ,Task.ParentRecordNumber
 ,Task.AssigneeFullName

FROM

Incident
  CROSS JOIN Task

WHERE

  Incident.IncidentNumber = Task.ParentRecordNumber
  AND Incident.Status IN (N'Active', N'Waiting')
  AND Incident.Service LIKE N'Property - Two-Way'
  AND Incident.OwnerTeam LIKE N'Corporate & Property Service Desk'
  ---- AND Task.OwnerTeam <> N'Property Systems'

与父记录关联的多条记录的术语是什么?子记录?

【问题讨论】:

    标签: sql sql-server report report-builder2.0


    【解决方案1】:

    您需要再次检查任务表。

    SELECT
      I.IncidentNumber
     ,I.Status
     ,I.CreatedDateTime
     ,I.OwnerTeam [Incident Owner]
     ,I.Service
     ,T.AssignedDateTime
     ,T.OwnerTeam [Task Owner]
     ,T.ParentRecordNumber
     ,T.AssigneeFullName
    FROM
      Incident I
      JOIN 
      Task T ON I.IncidentNumber = T.ParentRecordNumber
    WHERE
      Incident.Status IN (N'Active', N'Waiting')
      AND Incident.Service LIKE N'Property - Two-Way'
      AND Incident.OwnerTeam LIKE N'Corporate & Property Service Desk'
      AND NOT EXISTS (SELECT * 
              FROM Task T2 
              WHERE 
                 T2.OwnerTeam = N'Property Systems' AND 
                 T2.ParentRecordNumber = I.IncidentNumber)
    

    也要注意正确的 JOIN 语法

    【讨论】:

    • 谢谢,这成功了!当你这样做时,它看起来很简单!我认为 JOIN 不好,但是当我改变它时,我得到了错误。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    • 2013-08-15
    • 2019-12-03
    • 2014-05-08
    • 1970-01-01
    • 2018-12-26
    • 2020-09-23
    相关资源
    最近更新 更多