1

プロバイダー フェーズの支払いをカウントする手順があり、フェーズ 6 には 3 つのプロバイダーがあり、A、B、Cを呼び出しましょう。count * フェーズの支払いが必要ですが、フェーズ 6 ではカウント B (id=101) プロバイダーの支払いは必要ありません。select と記述します。

select phase , count(*) as countPhases
from  dbo.auth a
inner join dbo.providers p ON a.provider_id = p.serno 
where (date between @from_date and @to_date) and (provider_id <> 101 and phase <> 6 )
group by phase

しかし、それは私が望むようにフィルタリングしません(provider_id <> 101およびフェーズ<> 6)、助けてください

4

1 に答える 1

1

これを試して

where (date between @from_date and @to_date)
      and (phase <> 6
           or (phase=6 and provider_id <> 101))
于 2013-09-16T07:45:13.567 に答える