【问题标题】:Need SQL Script需要 SQL 脚本
【发布时间】:2018-09-06 23:18:22
【问题描述】:
incident_number   Has_Breached   Id
INC15229006       Breached       1
INC15229006       Not Breached   2
INC15229006       Not Breached   3
INC15087939       Not Breached   4
INC15087939       Not Breached   5
INC15087939       Not Breached   6
INC15087939       Not Breached   7
INC15087939       Breached       8
INC15087939       Not Breached   9
INC15087939       Breached       10
INC15087940       Not Breached   13
INC15087940       Not Breached   12
INC15087940       Not Breached   24
INC15087940       Not Breached   32
INC15087940       Not Breached   45
INC15087940       Not Breached   67

我需要如下结果

incident_number   Has_Breached
INC15229006       Breached
INC15087939       Breached
INC15087940       Not Breached

【问题讨论】:

  • 您愿意解释一下这背后的逻辑吗?
  • 如果任何一行标记为违规,则该 INC 的最终结果应违规
  • Stack Overflow 不是免费的编码服务。如果您想为自己编写代码,请雇人来做。

标签: sql sql-server gexperts


【解决方案1】:

如果可能的值只有'Breachend''Not Breached',你可以GROUP BY incident_number得到最小值为'Breached' < 'Not Breached'

SELECT incident_number,
       min(has_breached) has_breached
       FROM elbat
       GROUP BY incident_number;

【讨论】:

  • 太棒了,这行得通。我还需要在下一列中的每个事件有多少违规行为,这可能吗?
猜你喜欢
  • 1970-01-01
  • 2013-11-29
  • 1970-01-01
  • 1970-01-01
  • 2019-12-17
  • 2020-05-03
  • 2019-03-22
  • 1970-01-01
  • 2020-08-31
相关资源
最近更新 更多