如何在 postgres 中将多个值收集为单个字符串?

2024-01-05

我有桌子:

Project table

id name
-------
1  A
2  B

Assignment table

id name project_id
-------------------
1  A1   1
2  A2   1
3  A3   2

我希望编写一个查询,返回每个项目以及从中创建的作业的名称,例如:

project_id  assignments
-----------------------
1            A1,A2
2            A3

有什么办法可以实现这一点吗?


您可以连接表并使用array_agg组合以逗号分隔的值

SELECT a.id, array_agg(b.name) assignments
FROM    Project a
        INNER JOIN assignment b
          ON a.id = b.project_ID
GROUP BY a.id

SQLFiddle 演示 http://sqlfiddle.com/#!1/df056/3

或通过使用STRING_AGG

SELECT a.id, STRING_AGG(b.name, ', ' ORDER BY b.name) assignments
FROM    Project a
        INNER JOIN assignment b
          ON a.id = b.project_ID
GROUP BY a.id

SQLFiddle 演示 http://sqlfiddle.com/#!1/df056/5

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

如何在 postgres 中将多个值收集为单个字符串? 的相关文章

  • 如何进行数据透视并计算列平均值

    我承认这是迄今为止我必须面对的最复杂的 SQL 语句之一 我在这件事上碰壁了 我希望有人能帮我一把 我在数据库中有这张表 Item ActiveTime sec DateTime 1 10 2013 06 03 17 34 22 gt Mo
  • Extbase - 从查询中获取创建的sql

    我想从我的typo3 扩展中获取一些数据库表 该扩展基于 extbase 查询总是不返回任何内容 但数据存在 我试过这个 query this gt createQuery query gt statement SELECT FROM my
  • pg_dump 没有对象注释?

    有没有办法执行 pg dump 并排除表 视图和列的 COMMENT ON 我广泛使用 COMMENT ON 命令来描述所有对象 并且经常在其中包含换行符以获得更清晰的描述 例如 COMMENT ON TABLE mytable1 IS M
  • 使用 .NET 中的类型化数据集将 SQL 参数传递给 IN() 子句

    首先道歉 因为该网站上有类似的问题 但没有一个直接回答这个问题 我在 VS 2010 中使用类型化数据集 我在数据集中创建一个 TableAdapter 查询如下 SELECT from Table WHERE ID IN IDs 现在如果
  • postgreSQL 在 WAMP 上的集成

    我刚刚在 Windows 7 上安装了 postgreSQL 我正在尝试将 postgreSQL 与 WAMP 服务器集成 为此 我在 httpd conf 和 php ini 文件中进行了以下更改 1个加载模块c path to libp
  • hive sql查找最新记录

    该表是 create table test id string name string age string modified string 像这样的数据 id name age modifed 1 a 10 2011 11 11 11 1
  • java库维护数据库结构

    我的应用程序一直在开发 所以偶尔 当版本升级时 需要创建 更改 删除一些表 修改一些数据等 通常需要执行一些sql代码 是否有一个 Java 库可用于使我的数据库结构保持最新 通过分析类似 db structure version 信息并执
  • 标量子查询包含多行

    我正在使用 H2 数据库并想要移动一些数据 为此 我创建了以下查询 UPDATE CUSTOMER SET EMAIL SELECT service EMAIL FROM CUSTOMER SERVICE AS service INNER
  • 如何在 Django QuerySet 中将 DateField() + TimeField() 转换为本地时间?

    我的模型为这些字段 date models DateField 开始时间 models TimeField 结束时间 models TimeField 我想用以下方式注释查询集start datetime and end datetime
  • 需要 SQL 查询澄清[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有一个由以下列组成的表 billid patientid doctorid fees 如何显示治疗多名患者的医生 尝试了以下代码并得到了
  • postgresql 登录到另一个表时发生冲突

    我正在使用 PostgreSQL 9 5 并尝试使用批量插入每天插入数百万行 INSERT INTO tours as cst adults country id price VALUES 3 129 80 2 119 120 on con
  • 带有可变 WHERE 子句的批量 UPDATE 表

    我有一堆值对 foo1 bar1 foo2 bar2 我想做一堆更新 将 foo 列设置为 foo1 其中 bar 列为 bar1 我正在使用 psycopg2 在 Python 中执行此操作 我可以executemany与查询UPDATE
  • 有哪些可用选项可以识别和删除 Postgres 中的无效对象(例如:损坏的索引)

    有哪些可用选项可以识别和删除 Postgres 中的无效对象 如果您指的是检测 无效 创建不良 索引 显然 Postgres 在尝试创建索引时可能会 失败 然后查询规划器将不会使用它们 尽管它们存在于您的系统中 此查询将检测 失败 索引 h
  • NVARCHAR 变量在Where 子句中不起作用

    在 SQL Server 我想是 2018 我不知道如何判断 中 我的变量不起作用WHERE的条款NVARCHAR 比较应该返回值 但它什么也没返回 如果我只是手动输入声明的文本 它会突然起作用并返回值 没有任何逻辑原因应该有任何不同 类型
  • 如何将SQL数据加载到Hortonworks中?

    我已在我的电脑中安装了 Hortonworks SandBox 还尝试使用 CSV 文件 并以表结构的方式获取它 这是可以的 Hive Hadoop nw 我想将当前的 SQL 数据库迁移到沙箱 MS SQL 2008 r2 中 我将如何做
  • 3 个表的 SQL 查询(或联接)

    第一次在 Stack Overflow 上问问题 很棒的资源 但是只有一件事真正让我作为 SQL 新手感到困惑 我有三个表 我想获取与鲍勃的学生相关的所有导师的姓名 表 1 教师 ID Name 1 Bob 表 2 学生 STUDENT I
  • 如何加速spark df.write jdbc到postgres数据库?

    我是 Spark 新手 正在尝试使用 df write 加速将数据帧的内容 可以有 200k 到 2M 行 附加到 postgres 数据库 df write format jdbc options url psql url spark d
  • 使用连接池后如何处理过多的并发连接?

    Scenario 假设您有一个拥有大量流量的网站或应用程序 即使使用数据库连接池 性能也会受到真正的打击 站点 应用程序甚至可能崩溃 因为并发连接太多 Question 人们有什么选择来处理这个问题 我的想法 我在想有这个问题的人可以创建多
  • 在Python中检索PostgreSQL数据库的新记录

    在数据库表中 第二列和第三列有数字 将会不断添加新行 每次 每当数据库表中添加新行时 python 都需要不断检查它们 当 sql 表中收到的新行数低于 105 时 python 应打印一条通知消息 警告 数量已降至 105 以下 另一方面
  • Django 模型:默认日期时间未转换为 SQL CURRENT_TIMESTAMP

    我正在使用 Django 模型创建 PostgreSQL DB 我有一个 DateTimeField 我想将当前时间戳设置为默认值 我知道有多个消息来源建议如何做到这一点 但是 当我在 Django 之外检查数据库时 默认时间戳不会显示 我

随机推荐

  • 计算表面包含 4 个点的球体中心 (C#)

    我正在使用名为 MIConvexHull 的 3D Voronoi 库 它计算 3D 空间中一系列点的 3D Voronoi 图 然而 它没有提供有关 Voronoi 图结构的高级信息 报告的边只是一系列坐标对 然后必须计算其外心 现在 该
  • 使用 Azure 函数处理 Azure Datalake 存储文件

    我定期在 Azure Datalake 存储上的特定文件夹中获取文件 文件一到达 我想使用 Azure 函数进一步处理它 那可能吗 UPDATE With 多协议接入 https learn microsoft com en us azur
  • 当变量设置为新对象时,VBA 对象是否会被销毁?

    我还没有找到这个问题的具体答案 所以希望有人能为我解答 据我了解 VBA 垃圾收集器使用引用计数来确定是否不再需要某个对象 并显式解除与变量的关联 从而减少引用计数 Set objectVariable Nothing 这是我现在正在处理的
  • 简化 CNF 公式,同时保留某些变量的所有解决方案

    有关的 CNF 简化 https stackoverflow com questions 23461191 cnf simplification 事实上 我认为这个问题的提交者可能是在追求我想要的东西 有许多工具可用于简化 或求解前 预处理
  • Boost.Log 配置文件

    我正在向旧的 C 程序添加日志记录 经过一番研究后 我决定使用升压日志 http www boost org doc libs 1 56 0 libs log doc html index html 该文档充满了创建接收器和过滤器的示例 但
  • Arduino 上的中断会中断其他中断吗?

    我有一个Arduino Uno http arduino cc en Main ArduinoBoardUno 很棒的小设备 它有两个中断 让我们称呼他们吧0 and 1 我将一个处理程序附加到中断 0 并将另一个处理程序附加到中断 1 使
  • 如何将lucene文件从2.2升级到4.3.1

    我在 lucene V 2 2 中有大量索引数据 并且我已将 lucene jar 升级到 4 3 1 新版本支持升级2 2文件 如果是 我该怎么做 Lucene 保证索引向后兼容以前的主要版本 这意味着 Lucene 4 X 应该能够读取
  • 如何将 CSS 动画导出为动画 PNG、gif 或 WEBP *具有透明度*?

    Press 运行代码片段 下面可以看到我想要保存的动画加载微调器 我想用透明度替换所有绿色 另外 我希望动画能够完美循环 我尝试使用OBS录制屏幕截图视频 然后上传到https ezgif com video to gif https ez
  • Bootstrap对齐不同高度的列

    我希望能够将未知数量的列与未知的高度对齐 由于我不知道会有多少列 因此使用多行来分割列对我来说并不理想 我几乎可以通过使用列表项来达到我想要的结果 我不喜欢使用列表项的一件事是 一旦页面达到调整大小点 我就会在右侧留下额外的空间 顶部的一组
  • edge-sql.js 如何设置connectionString?

    var edge require edge var getProduct edge func sql function select from Products where ProductId myProductId getProduct
  • pandas 将多列索引应用于数据框

    情况是我有一些文件 其中包含具有多个字段的各种股票的 time series 数据 每个文件包含 time open high low close volume 目标是将所有内容放入表单的一个数据框中 field open high sec
  • cmake 在命令行上创建 Visual Studio 解决方案

    我使用的是cmake 2 6 4 WinXP专业版 在 Visual studio 2008 VC Express 版本上编译 我可以使用 cmake GUI 创建解决方案文件 但是 我不想使用 cmake GUI 因为我总是更喜欢命令行
  • 使用 --experimental-specifier-resolution=node 时如何让 yargs 自动完成工作

    我的目标是在 Typescript node js 中编写一个 CLI 它使用 experimental specifier resolution node 用 yargs 编写 支持自动完成 为了使这项工作正常进行 我使用这个entry
  • 在fabric.js中编写乳胶公式

    我希望能够在 Fabric js 画布中用乳胶编写公式 也许可以使用 MathJax http fabricjs com fabric intro part 2 text http fabricjs com fabric intro par
  • 如何检查“调试器”是否存在关键字存在吗?

    有时一些开发人员忘记删除debugger 在 javascript 代码中 它会在 IE 上产生 javascript 错误 你如何检查 例如控制台 if window console console log foo 如果调试器存在 顺便说
  • Visual Studio 2010 中的 UML 图生成器

    我的教授要求我们为下一个作业生成 UML 我们使用 Visual Studio 2010 进行 C 编程 我尝试解决它 但我无法弄清楚 我转到 体系结构 gt Windows gt UML 模型资源管理器 但不明白下一步该去哪里 UML 生
  • Spring boot MVC:找不到JSP

    Problem 我无法到达下面的视图WEB INF jsp在我的 Spring Boot Web MVC 应用程序上 我做了什么 这是我的 JSP
  • 在 R 中绘制多个图时更改图的大小

    我想知道当您使用 par mfrow c 函数绘制不同的图时 是否有一种方法可以定义 R 中图的大小 举一个简单的例子 par mfrow c 3 1 plot 1 2 plot 1 2 plot 1 2 所有地块都具有相同的大小 例如 是
  • C# 中小型集合的 List.Add 与 HashSet.Add

    Given HashSet
  • 如何在 postgres 中将多个值收集为单个字符串?

    我有桌子 Project table id name 1 A 2 B Assignment table id name project id 1 A1 1 2 A2 1 3 A3 2 我希望编写一个查询 返回每个项目以及从中创建的作业的名称