Sql 组中的一个ID满足所有相同ID的重复值条件,如果

Sql 组中的一个ID满足所有相同ID的重复值条件,如果,sql,sql-server,case,conditional-statements,Sql,Sql Server,Case,Conditional Statements,我想使用基于条件的用例。但是,如果相同ID的条件至少满足一次,那么我希望对具有特定ID的所有行重复1 目前,我正在使用以下工具: Select case when REPORTING_DATE = Convert(datetime, '2016-11-30') then 1 else 0 end as November , Reporting_Date , ID from TableA where 1=1 导致 November Reportin

我想使用基于条件的用例。但是,如果相同ID的条件至少满足一次,那么我希望对具有特定ID的所有行重复1

目前,我正在使用以下工具:

Select  case when REPORTING_DATE  = Convert(datetime, '2016-11-30')  then 1 else 0  end as November 
        , Reporting_Date
        , ID
from TableA
where 1=1
导致

November    Reporting_Date  ID
  0        30-9-2016        A
  0        31-10-2016       A
  1        30-11-2016       A
但是,我想对所有A ID重复1

 November   Reporting_Date      ID
      1        30-9-2016        A
      1        31-10-2016       A
      1        30-11-2016       A
      0        30-09-2016       B  
      0        31-10-2016       B
      0        30-09-2016       C 
任何想法,我尝试了分区,但它似乎不工作。。。 提前谢谢。

你可以试试这个

Select  MAX(case when REPORTING_DATE  = Convert(datetime, '2016-11-30')  then 1 else 0  end) OVER(PARTITION BY ID) as November 
        , Reporting_Date
        , ID
from TableA
where 1=1
你可以试试这个

Select  MAX(case when REPORTING_DATE  = Convert(datetime, '2016-11-30')  then 1 else 0  end) OVER(PARTITION BY ID) as November 
        , Reporting_Date
        , ID
from TableA
where 1=1