2016-05-16 6 views
1

私はSQLステートメントを作成して、通常の顧客と法人顧客の数の国のリストを作成しようとしています。したがって、3列のCountry,Normal customer、およびcorporate customerが必要です。SQLのさまざまな列

Countryの列には、顧客表のすべての国が含まれます。ノーマルと法人顧客は、それぞれの国の法人顧客数と法人顧客数を表示します。

顧客テーブルに列CustomerIDcompanycountry

が含まれており、出力は次のようになります。

Country | Normal Customer | Corporate Customer 
---------------------------------------------------------------- 
Japan  | 25    | 2 
Korea  | 23    | 0 

をこれまでのところ、私はこれだけを持っているが、私はちょうど私は場合は知っている必要があります適切な道を歩いていると、それはまだ完全ではありません。

SELECT 
    Country, company 
COUNT 
FROM 
    Customer 
WHERE 
    Company IS NOT NULL 

答えて

1

私はここに会社が存在しないときは「通常の」顧客であると仮定しています。

SELECT 
Country 
,SUM(CASE WHEN Company IS NULL THEN 1 ELSE 0 END) Normal_Customer 
,SUM(CASE WHEN Company IS NOT NULL THEN 1 ELSE 0 END) Corporate_Customer 
FROM Customer 
GROUP BY Country 
+0

これはありがとうございます! – razorcode7

+0

喜んでお手伝いします:)私はちょうど2つのカンマを忘れてしまったので、私はちょうど編集しました。 –

関連する問題