Snowflake SQL:基于共享键连接多行中的值

2024-01-09

我有一个值表,其中每个键值都有可变数量的行。我想输出一个表,将这些行值连接到每个不同的键值上。

输入表

KEY_ID SOURCE_VAL
1 a
1 b
1 c
2 d
3 e
3 f

目标输出表

KEY_ID OUTPUT_VAL
1 a,b,c
2 d
3 e,f

在 Snowflake SQL 中编写此代码最有效的方法是什么?


可以用以下方法完成LISTAGG https://docs.snowflake.com/en/sql-reference/functions/listagg.html:

SELECT KEY_ID, 
       LISTAGG(SOURCE_VAL, ',') WITHIN GROUP(ORDER BY SOURCE_VAL) AS OUTPUT_VAL
FROM tab
GROUP BY KEY_ID
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Snowflake SQL:基于共享键连接多行中的值 的相关文章

随机推荐

  • 谷歌表格中填充谷歌表格的平均持续时间

    我有一个从谷歌表单自动填充的谷歌工作表 有一个包含持续时间的列 当我尝试平均这些持续时间时 我得到除以零的错误 我尝试更改单元格格式 但没有任何效果 事实上 无论我选择什么格式 它都不会改变 我认为格式是根据填充工作表的表单来锁定的 对于获
  • 将进程发送到后台并将控制权返回到我的 shell

    我正在为我的 CS 类编写一个 shell 并且该项目的一部分涉及如果用户传入 字符 则在后台运行一个进程 如果一个进程在前台运行 我只需execvp该进程并且它仍然控制着终端 因为它位于前台 但是 如果它是后台进程 我必须在开始执行进程后
  • 无法将函数的数组结果分配给数组

    我正在尝试将函数的数组结果分配给数组 如果我尝试将结果数组的一个元素分配给我的数组 它工作正常 但在尝试将整个结果数组分配给我的数组时它会返回错误 无法分配给数组 Sub test Dim lol 6 as Double lol Hehe2
  • 将存储过程传递给 sp_send_dbmail

    我在 SQL Server 2008 中使用 sp send dbmail 发送查询结果 我将查询移动到一个过程中 并尝试在 sp send dbmail 过程中使用该过程 如下所示 EXEC msdb dbo sp send dbmail
  • 如何为 Foundation 的 Orbit 图像滑块预加载图像?

    使用Zurb的Foundation 4 1 5 最新版本 轨道图像滑块 http foundation zurb com docs components orbit html效果很好 不幸的是 在最初的几秒钟里 所有图像都显示为一个巨大的项
  • 使用groovy Sql批量插入?

    如何在模拟准备好的语句时使用 groovy Sql 进行批量插入 我发现的所有示例都与以下类似 并且不使用准备好的语句 withBatch stmt gt stmt addBatch insert into table field1 fie
  • 从 Eclipse 和 Spark Context 将 Spark 应用程序作为纱线作业提交

    我已经可以提交了local来自我的 Eclipse IDE 的 Spark 作业 用 Scala 编写 但是 我想修改我的 Spark 上下文 在我的应用程序内 以便当我 运行 应用程序 在 Eclipse 内 时 作业将使用 Yarn 作
  • 从服务器导入更改后出现 GIT 错误

    我试图确定为什么网站上的功能可以在本地工作但不能远程工作 所以我的想法是下载远程站点并执行 git diff 以便发现任何差异 然而 自从我这样做以来 所有 GIT 命令都得到满足 fatal Unable to read current
  • R - 如何向 pheatmap 添加线条和文本?

    我正在使用创建热图pheatmap 函数使用以下代码 library pheatmap pheatmap data matrix 1 11 cluster rows F cluster cols F scale none show rown
  • 从用户角度来看,Jenkins 和 Hudson 最显着的区别是什么?

    距 Jenkins 与 Hudson 分手已有 10 个月左右 当查看项目主页时 我想知道 Hudson 和 Jenkins 之间到底有什么区别 从变更日志中我并没有真正学到很多东西 有很多更改 主要区别似乎是 Jenkins 发布频率更高
  • 如何正确传递子进程参数

    我正在尝试自动连接 格式正确的 mp4 视频文件的文件夹 我的问题的这个编辑版本将问题减少到了我困惑的最低水平 原始标题询问了之间的差异subprocess call and subprocess run但事实证明问题出在其他地方 Why
  • 如何在 WPF 中的 DatePicker 中获取日历

    我需要参考Calendar in a DatePicker object 我想象这很容易 DatePicker datePicker new DatePicker Calendar calendar datePicker Calendar
  • Android Studio 3.5.2 - 市场插件未加载

    Windows 防火墙允许 Android Studio 试着 关闭 Windows 防火墙 尝试使用不同的 ISP 尝试在本地安装 Flutter 插件 这些都不起作用 请帮我 我缺少什么 经过 10 个小时的搜索 以下是解决方案的步骤
  • 优雅地终止 Apache Commons Exec 进程

    我正在我的 Java 程序 在 Linux 上 中启动一个外部进程 并且我需要能够向它发送 SIGTERM 信号而不是 SIGKILL 信号exec getWatchdog destroyProcess 正在发送 有没有一种方法可以让我更优
  • 除了互斥锁或垃圾回收之外,还有哪些机制会减慢我的多线程 java 程序的速度?

    Problem 我有一段java代码 JDK 1 6 0 22 如果相关的话 它实现了一个无状态 无副作用的函数 没有互斥体 但是它确实使用了大量内存 我不知道这是否相关 过去 我曾访问过 Sun 实验室并收集了标准的 性能与线程数 曲线
  • 非矩阵数据类型的 C# 和 MATLAB 互操作性

    我正在编写一个需要调用 MATLAB 处理例程的 C 程序 我一直在研究 MATLAB 的 COM 接口 不幸的是 COM 接口在可交换的数据类型方面似乎相当有限 支持矩阵和字符数组 但似乎不支持使用 COM 接口在 C 和 MATLAB
  • 如何将地图视图注释从一个位置动画到另一个位置?

    我的 iPhone 应用程序中有一种情况 我应该将注释 汽车图像 从一个位置移动到另一个位置 我对 iOS 还很陌生 我以特定时间方式从服务器获取坐标 我已经用过HGMovingAnnotationSample但我的情况不同 请帮我 我已经
  • 带有约束的 Symfony2 单元测试表单

    我有一个未连接到实体的表单 但确实具有此处提到的约束 http symfony com doc current book forms html adding validation http symfony com doc current b
  • 在 MATLAB 中求解矩阵?

    如何求解 非平凡 解 Ax 0 for x inMATLAB http en wikipedia org wiki MATLAB A matrix x matrix trying to solve for 我尝试过solve A x 0 x
  • Snowflake SQL:基于共享键连接多行中的值

    我有一个值表 其中每个键值都有可变数量的行 我想输出一个表 将这些行值连接到每个不同的键值上 输入表 KEY ID SOURCE VAL 1 a 1 b 1 c 2 d 3 e 3 f 目标输出表 KEY ID OUTPUT VAL 1 a