掌握子查询
您是一家管理连锁酒店数据的企业的数据建模师。业务团队需要审查客户数据,以制定客户留存策略。市场部门希望了解高收入客户的活跃状态以及他们对酒店服务的参与度。 您的目标是利用现有客户数据,识别高预估薪资的活跃与流失客户,并分析他们的平均年龄与任职年限(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);