4

他の2つの列が真である列をカウントする必要があるクエリがあります。'%MINI%' AND'DealerContact_Y' = 1のような'DealerName'の場合、'DealerName'をカウントする必要があります

しかし、構文がわかりません。このクエリはエラーを生成します

SELECT DealerName,
       count(DealerShipId) as dealersContacted,
       CASE WHEN
       DealerName LIKE "%MINI%", WHEN DealerContact_Y = 1
       THEN Count(DealerContact_Y) END as Mini_contacted_yes,
       Campaign, 
       DealerId 
       FROM tblsummaryResults

caseステートメントで複数のWHENSを実行する方法はありますか?

4

2 に答える 2

4

次のように記述しますDealerName LIKE '%MINI%' AND DealerContact_Y = 1

SELECT DealerName,
  count(DealerShipId) as dealersContacted,
  count(CASE 
          WHEN DealerName LIKE '%MINI%' 
              AND DealerContact_Y = 1
          THEN DealerContact_Y END) as Mini_contacted_yes,
  Campaign, 
  DealerId 
FROM tblsummaryResults
于 2013-02-07T13:54:54.370 に答える
1

したがって、次のように数えます。

COUNT(
  IF(DealerName LIKE "%MINI%" AND DealerContact_Y = 1, DealerContact_Y, NULL)
) AS Mini_contacted_yes
于 2013-02-07T13:55:27.903 に答える