【发布时间】:2021-06-04 11:23:45
【问题描述】:
我有一个包含 3 列的表:CLIENT_ID、STORE_ID 和 MADE_PURCHASE。基本上,我正在尝试获取客户购买的 CLIENT_ID 列表和 STORE_ID 数组。对于以下数据,这是预期的结果:
数据:
| CLIENT_ID | STORE_ID | MADE_PURCHASE |
|---|---|---|
| 1 | a | YES |
| 1 | b | YES |
| 1 | c | YES |
| 2 | a | YES |
| 2 | b | NO |
| 2 | c | YES |
| 3 | a | NO |
| 3 | b | NO |
| 3 | c | NO |
预期结果:
| CLIENT_ID | STORE_ID |
|---|---|
| 1 | a,b,c |
| 2 | a,c |
我能够通过创建一个查询来过滤掉 MADE_PURCHASE = 'NO' 的行来达到预期的结果。然后我在报告中创建了一个列表。第一列是 CLIENT_ID,然后我在包含 STORE_ID 的第二列中插入一个转发器。
问题是转发器将我的报告减慢了大约等于检索到的 CLIENT_ID 数量的因子。例如,如果我在没有中继器的情况下运行查询,并且它在 10 秒内返回 10 个唯一的 CLIENT_ID,那么添加中继器会将报告速度减慢到 100 秒。只要我在提示中输入了超过几百个 CLIENT_ID,报告就会需要几个小时才能运行。
我尝试编辑列表和中继器之间的主从关系,没有太大变化。任何人都知道如何让它运行得更快?
附:我知道所需的输出格式并不理想,但目标是使用 STORE_ID 上的连接来模仿基于 excel 构建的旧报告,因此,客户希望保留原始格式。
【问题讨论】: