sql - Redshift:跨市场订购的增量产品
问题描述
我有一个表格“Customer_Orders”,它基本上列出了客户在市场(英国、德国、美国等)购买的产品。以下是该表的简短概述:
客户 ID | 市场 | 产品 |
---|---|---|
1 | 英国 | 一个 |
1 | 英国 | 乙 |
1 | 德 | 一个 |
1 | 我们 | 一个 |
1 | 我们 | C |
从上表中,我想提取订购的产品的增量数量 1. 总计;2. 按市场。例如:如果我们以英国为基数,总计:3;德国:0 和美国:1。
解决方案
你想得到这样的差异吗?
select cust_id, marketplace,
(count(*) - max(case when marketplace = 'UK' then count(*) end) over (partition by cust_id)) as diff_from_uk
from Customer_Orders co
group by cust_id, marketplace;
推荐阅读
- java - 两台服务器分别用于 HTML 和 Java Jersey Rest API 或单个 Tomcat Webapp
- node.js - 导入 `express` 库需要数百毫秒。有没有办法加快这个过程?
- ios - 如何从另一个 UIView 类访问 UIControl 的值
- json - 解组 JSON 保留空值
- javascript - 在父子组件中保持状态(复选框和复选框)
- angular - 使用服务和组件实现命令设计模式时遇到问题 [初学者 Angular]
- perl - 用于 HTML 的 Perl 多字节字符编码
- javascript - (React)仅在满足条件时如何渲染组件
- c - 如何释放我使用的指针?使用后是否可以释放指针?
- python - 结果值存储在数组或 json 中