如何在 Oracle Analytics Cloud 专业版中实现具有相同 id 的列中条目的字符串连接?

Posted

技术标签:

【中文标题】如何在 Oracle Analytics Cloud 专业版中实现具有相同 id 的列中条目的字符串连接?【英文标题】:How to achieve string concatentation of entries in column having same id in Oracle Analytics Cloud Professional Edition? 【发布时间】:2021-05-02 18:31:13 【问题描述】:

我有一个数据集,其中一列是 Branch-ID,另一列是 Branch Manager,它在给定的 url 中如下所示。 dataset

我想根据分支 ID 将分支经理合并为一列。例如,如果 Bob 和 Sandra 是两个不同的分支经理,但具有相同的分支 id,即 branch-id=1,那么我们应该将它们连接在一起作为 Bob-Sandra,并将它们放在单独创建的列中。

我已附加上述数据集的预期输出。 expected_output_dataset

我目前正在使用 Oracle Analytics Cloud 专业版

【问题讨论】:

【参考方案1】:

我不了解 Oracle 分析,但是 - 如果它与 Oracle 数据库及其功能有关,那么 listagg 会有所帮助。

#1 - 10 行中的示例数据;您可能感兴趣的查询从第 11 行开始。

SQL> with test (account_id, branch_id, branch_manager) as
  2    (select 1, 123, 'Sandra'  from dual union all
  3     select 3, 124, 'Martha'  from dual union all
  4     select 4, 125, 'John'    from dual union all
  5     select 6, 126, 'Andrew'  from dual union all
  6     select 7, 126, 'Mathew'  from dual union all
  7     select 2, 123, 'Michael' from dual union all
  8     select 5, 125, 'David'   from dual union all
  9     select 8, 126, 'Mark'    from dual
 10    )
 11  select a.account_id, a.branch_id, a.branch_manager,
 12    b.concatenated_column
 13  from test a join (select branch_id,
 14                      listagg(branch_manager, '-') within group (order by null) concatenated_column
 15                    from test
 16                    group by branch_id
 17                   ) b on b.branch_id = a.branch_id;

ACCOUNT_ID  BRANCH_ID BRANCH_ CONCATENATED_COLUMN
---------- ---------- ------- -------------------------
         1        123 Sandra  Michael-Sandra
         3        124 Martha  Martha
         4        125 John    David-John
         6        126 Andrew  Andrew-Mark-Mathew
         7        126 Mathew  Andrew-Mark-Mathew
         2        123 Michael Michael-Sandra
         5        125 David   David-John
         8        126 Mark    Andrew-Mark-Mathew

8 rows selected.

SQL>

【讨论】:

以上是关于如何在 Oracle Analytics Cloud 专业版中实现具有相同 id 的列中条目的字符串连接?的主要内容,如果未能解决你的问题,请参考以下文章

在 Azure Synapse Analytics(Azure SQL 数据仓库)中创建外部数据源到 Oracle

Machine Learning with Oracle Database Advanced Analytics

具有“NULL”值的 Oracle SQL Analytics 函数 FirstValue

Oracle SQL Query,用于拆分和计算列中的值的功能?

“MySQL Analytics Engine”来了

如何在 analytics.js 中为谷歌分析设置页面速度日志记录