始める無料で始める

サブクエリを極める

あなたはホテルチェーンのデータを管理するビジネスのデータモデラーです。事業チームは、リテンション戦略の立案に向けて顧客データを調査する役割を担っています。マーケティング部門は、高所得の顧客が現在どの程度アクティブで、ホテルのサービスにどれだけ関与しているかに関する洞察を必要としています。 あなたの目標は、既存の顧客データを用いて、高い推定年収を持つアクティブ顧客と解約(離脱)顧客を特定し、彼らの平均年齢と在籍期間(tenure)を分析することです。この目標を達成するために、あらかじめ用意された共通テーブル式 CustomerStatus を使用できます。

この演習はコースの一部です

Snowflakeで学ぶデータモデリング入門

コースを見る

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

WITH customer_status AS (
	SELECT c.customerid,
  		c.age,
        c.tenure,
        CASE 
            WHEN ch.customerid IS NOT NULL THEN 'Churned' 
            ELSE 'Active' 
        END AS status
    FROM customers AS c
    	LEFT JOIN churn AS ch 
  		ON c.customerid = ch.customerid
    GROUP BY c.customerid, c.age, c.tenure, status
)
-- Extract attribute from CTE
___
FROM customer_status
-- Filter results
___ customerid IN (___ customerid
                   ___
                   ___ estimatedsalary > 175000);
コードを編集して実行