【发布时间】:2020-10-29 16:34:27
【问题描述】:
我有一个包含以下列的表:Date、AcctId、CustID、BackupID、Logins、Amount。对于给定的日期,AcctID 可以有多个CustIDs,但我想根据Logins 的值将单数CustID 分配给AcctID。
即:
如果Cust1 在给定日期和AcctID 中的Logins 比Cust2 多,那么CustID 的值应该是Cust1。
如果Cust1 logins = Cust2 logins 那么CustID 应该有BackupID 值。
然后我想为给定的Date、AcctID 添加Amount。
谁能帮忙分析一下逻辑?我尝试了自我加入,但可能没有以正确的方式思考。
【问题讨论】:
-
棘手的部分是如果 Cust1 logins = Cust2 logins 那么 CustID 应该有 BackupID 值。如果 all CustID per Date/AcctId 显示相同的登录次数,那么使用 BackupId? Acct_Id 和 BackupId 之间是否存在 1-1 关系?
-
在这种情况下应该添加多少数量?
-
样本数据和期望的结果会有所帮助。哪个备份ID?总是一样吗?
标签: sql teradata self-join teradata-sql-assistant