PostgreSQL整数数组值使用desc字符串连接到其他表中的整数

2024-01-10

我有一张桌子test包含 int 数组和值的列,例如{1000,4000,6000} or {1000} or {1000,4000} called ekw。 这些值与另一个表中的描述字符串匹配

tab: test
id | name   | ekw
-----------------
 1 |  One   | {1000}
 2 |  Two   | {1000,4000}
 3 |  Three | {1000,4000,6000}

tab: ekwdesc
id | value  | desc
-----------------
 1 |  1000  | Max
 2 |  2000  | Tim
 3 |  3000  | Rita
 5 |  4000  | Sven
 6 |  5000  | Tom
 7 |  6000  | Bob

是否可以选择这些列并打印字符串?

就像是:

select name, ekw from test, ekwdesc

我想看到这个结果:

id | name   | ekwdesc
-----------------
 1 |  One   | Max
 2 |  Two   | Max, Sven
 3 |  Three | Max, Sven, Bob

我尝试使用 IN 和 ANY 但无法使其工作。


你有正确的想法来使用any连接的运算符。连接完成后,剩下的就是使用string_agg http://www.postgresql.org/docs/9.1/static/functions-aggregate.html将结果转换为您想要的格式:

SELECT   name, STRING_AGG(description, ', ')
FROM     test
JOIN     ekwdesc ON ekwdesc.value = ANY(test.ekw)
GROUP BY name

见附件SQLFiddle http://sqlfiddle.com/#!15/113d1/1一个可执行的例子。

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

PostgreSQL整数数组值使用desc字符串连接到其他表中的整数 的相关文章

  • java mysql 准备好的语句

    我正在尝试使用 java 向数据库中进行简单的插入 它告诉我我的 sql 语法已关闭 但是 当我复制打印出来的字符串并将其放入 phpmyadmin 中的 sql 命令中时 它会正确执行该命令 并且我似乎无法弄清楚 java 中的字符串查询
  • 连接两个表的查询的 SQL Server“FOR XML”输出

    我是 SQL Server 中 FOR XML 功能的新手 我正在使用 SQL Server 2012 我有两个表 Word 和 Word Expansion 样本数据 表 字 WordOID Word 1 PIPE 2 WIRE 表 Wo
  • 使用 javascript Array reduce() 方法有什么真正的好处吗?

    reduce 方法的大多数用例都可以使用 for 循环轻松重写 对 JSPerf 的测试表明 reduce 通常会慢 60 75 具体取决于每次迭代内执行的操作 除了能够以 函数式风格 编写代码之外 还有什么真正的理由使用reduce 吗
  • Java中char数组的默认值是多少?

    如果我像这样分配字符数组 char buffer new char 26 它分配的默认值是什么 我尝试打印它 但它只是一个空字符 System out println this is what is inside gt buffer 1 t
  • 如何在Oracle中使用Timestamp_to_scn和Scn_to_timestamp?

    我的查询结果是这样的 select cast to date a start time mm dd yyyy hh mi ss pm as timestamp date of call ora rowscn from calling tab
  • SQL Server 用分隔符分割字符串

    我有一个输入字符串 100 2 3 101 2 1 103 2 3 我想解析它并将其添加到具有 3 列的表中 因此它应该是 f x col1 col2 col3 100 2 3 类似的其他数据以逗号分隔作为记录和 作为列 Thanks ni
  • 如何在 Microsoft 报告中显示字节数组中的图像

    我使用报表文件和 ReportViewer 控件来显示在运行时从对象动态加载数据的报表 我需要显示一个以字节数组形式存储在对象中的图像 PictureBox 的值当前设置为 First Fields ImageData Value dtst
  • 如何在 SQL Server 中使用 nvarchar 变量为 unicode 用户添加前缀“N”?

    如何在 SQL Server 中使用 nvarchar 变量为 unicode 用户添加前缀 N 例如 给定这个变量 declare Query1 nvarchar max 我可以这样分配它 set Query1 N 但是如果我想使用怎么办
  • 将 Javascript 对象的属性从 string 更改为 int

    我有一个对象数组 每个对象具有三个属性 年份 总计 人均 例子 0 Object per capita 125 8 total 1007 2 year 2009 这些属性是字符串 我想创建一个循环来遍历数组并将它们转换为 int 我尝试了以
  • 将 UUID 存储为 base64 字符串

    我一直在尝试使用 UUID 作为数据库键 我希望占用尽可能少的字节数 同时仍然保持 UUID 表示形式的可读性 我认为我已经使用 base64 将其减少到 22 个字节 并删除了一些尾随的 这些 对于我的目的来说似乎没有必要存储 这种方法有
  • 如何使用 typeorm 在 postgres 中保存 json 对象数组

    我正在尝试在 postgres 中保存 jsonb 类型的对象数组 Entity Column type jsonb array true nullable true testJson object 我在邮递员中发送的json testJs
  • 从 C 数组中删除大量元素的最快方法

    我有包含数千个甚至更多元素的动态数组 为了不消耗大量内存 我可以从中删除不需要的元素 即元素已被使用 不再需要它们 所以从一开始我可以通过估计每次删除元素后所需的最大大小来分配较小的内存大小 我用这个方法但是需要很长很长的时间才能完成 有时
  • 如何在不运行 PostgreSQL 服务器的情况下初始化 PostgreSQL 数据库

    在初始化脚本中 我想初始化 PostgreSQL 目录 但在此阶段不需要 也不希望 正在运行的 PostgreSQL 服务器 如果我只是创建集群 作为用户postgres initdb D 但是 我还需要创建 PostgreSQL 角色 创
  • 插入触发器最终在分区表中插入重复行

    我有一个分区表 我认为 适当的INSERT触发器和一些限制 不知何故 INSERT语句为每个语句插入 2 行INSERT 一个用于父分区 一个用于相应的分区 设置简要如下 CREATE TABLE foo id SERIAL NOT NUL
  • MySQL MIN/MAX 所有行

    我有桌子Races与行ID Name and TotalCP 我选择分钟 TotalCP FROM Races 但是我想选择具有最小值的整行 我如何在单个查询中做到这一点 从聚合值获取整行的一般形式是 SELECT FROM Races W
  • 列中差异的数量

    我想检索一列每行中有多少个字母的差异 例如 如果您有一个值 test 而另一行有一个值 testing 则 test 和 testing 之间的差异为 4 个字母 该列的数据值为 4 I have reflected about it an
  • 如何计算特定字符在字符串中出现的次数

    我正在尝试创建一个函数来查看数组中的任何字符是否在字符串中 如果是 有多少个 我尝试计算每一种模式 但是太多了 我尝试使用 Python 中的 in 运算符的替代方案 但效果不佳 function calc fit element var
  • 了解 SSMS 2008 中关系的更新和删除规则

    当我们定义外键约束时 我对 SQL Server 2008 Management Studio 中的更新和删除规则的含义感到困惑 我也没有找到相关的帮助文档 例如F1帮助 这是屏幕快照 如果有人能描述它们的含义并推荐一些相关文档来阅读 我将
  • Laravel leftJoin 仅右表的最后一条记录

    我是 Laravel 的新手 我有两张桌子 1 产品 2 价格 products id product int p key name varchar prices id price int p key id product int
  • 当所有维度值都具有 100% 重要性时处理多对多维度

    我至少会尽力保持简洁 假设我们正在跟踪一段时间内的账户余额 所以我们的事实表将包含诸如 账户余额情况表 FK 账户ID FK 日期ID Balance 显然你有一个账户维度表 and a 日期维度表 所以现在我们可以轻松地过滤帐户或日期 或

随机推荐

  • C#:HashSet的易失性读写

    我有一堂课 public class Checker private HashSet
  • 单击单选按钮时提交表单 - 单击单选按钮时提交表单并执行其他操作

    我有一个关于单选按钮和表单的 jQuery 问题 我有选项卡式内容设置 有 5 个选项卡设置 每个选项卡中有一个表单 每个表单由 5 个单选按钮和一个提交按钮组成 我有我的 jQuery 设置来验证是否首先进行了选择 然后使用 AJAX 提
  • Espresso 测试经常因 NoActivityResumedException 失败

    编辑 更新了描述和错误消息并添加了一些图像 还是有这个问题 我在运行浓缩咖啡测试时多次出现奇怪的错误 几次成功的测试运行后 测试开始失败 并出现以下异常 06 23 13 04 48 438 info TestRunner failed W
  • 如何在频繁更新的滑动数组中有效跟踪滚动最小值/最大值

    考虑以下 JavaScript 数据结构 let sensors sensor1 min 1 00 max 9 00 data timestamp 1517760374400 value 1 00 timestamp 15177603745
  • 无法理解 Rust 模块系统

    我出于教育目的创建了一个简单的项目 所以我有一个主要功能和 3 个特征Battery Display and GSM以及他们的实施 我希望 main 函数位于文件 main rs 中 而 3 个特征位于另一个名为 phone rs 的文件中
  • 如何在 Apache-Spark 中连接主从? (独立模式)

    我在用着Spark独立模式 https spark apache org docs latest spark standalone html以独立模式安装 Spark 的教程页面 1 我通过以下方式开始了大师生涯 sbin start ma
  • 错误:“非静态字段、方法或属性需要对象引用...”[重复]

    这个问题在这里已经有答案了 我正在用 C 创建一个应用程序 它的功能是评估给定的数是否是素数以及相同的交换数是否也是素数 当我在 Visual Studio 中构建解决方案时 它说 非静态字段 方法或属性需要对象引用 我在使用 voltea
  • 将 Spark 结构化流与 Confluence 架构注册表集成

    我在 Spark 结构化流中使用 Kafka Source 来接收 Confluence 编码的 Avro 记录 我打算使用Confluence SchemaRegistry 但与spark结构化流的集成似乎是不可能的 我已经看到这个问题
  • C# 每 X 分钟运行一个线程,但前提是该线程尚未运行

    我有一个 C 程序 需要每 X 分钟调度一个线程 但前提是之前调度的线程 从 X 分钟开始 当前尚未运行 一个普通的老Timer单独运行是行不通的 因为它每 X 分钟调度一个事件 无论先前调度的进程是否已完成 将要分派的进程执行其任务所需的
  • 如何在返回集合的 lambda 中使用异步

    我有一个异步 上游 方法 我试图遵循最佳实践 并在堆栈中全力以赴地进行异步 在 MVC 内的控制器操作中 如果我依赖 Result 我可以预料到会遇到死锁问题 将控制器操作更改为异步似乎是可行的方法 但问题是异步方法在 lambda 中被多
  • SSMS 从我的存储过程中删除预 BEGIN 注释

    我正在运行 SSMS 12 0 2000 8 如果我使用SSMS查询编辑器创建一个存储过程 如下例 之前的注释BEGIN当我执行 保存它时被删除 CREATE PROCEDURE myproc Say goodbye to this com
  • C# 检查 JSON 文件是否包含字符串

    我正在尝试这样做 以便我可以检查字符串是否在 json 中 例如 在我的 JSON 文件中存在 name Disp R name Disp L name Disp C 每当 Disp 在字符串中时 整个值都应该存储在列表中 我就是这样做的
  • MySql:限制一张表中某一列的更新权限

    我有一个表 我们称之为学生表 其模式称为注册 表学生有一个名为地址的列 我不希望某个用户更新该列 其他权限都可以 例如选择 插入 该表中以及该架构中的所有其他列都应该具有更新权限 这可行吗 您可以设置数据库 表 列的权限 但我真的不会尝试在
  • 艾里函数积分的根(matlab)

    我想解下面的方程 我在函数的定义上做错了 但我仍然不明白 function F myairyint x F integral x airy x 1000 end functi2 x myairyint x0 1 1 15 fsolve fu
  • 如何以可微分的方式计算几何平均值?

    如何使用 Pytorch 计算沿某个维度的几何平均值 有些数字可能是负数 该函数必须是可微的 几何平均值的已知 合理 数值稳定版本是 import torch def gmean input x dim log x torch log in
  • 有没有办法将通用列表转换为接口/基类类型列表?

    我试图向某人展示接口在他们创建的疯狂情况下的用途 它们在列表中有几个不相关的对象 并且需要对每个对象中的两个字符串属性执行操作 我指出 如果他们将属性定义为接口的一部分 他们可以使用接口对象作为作用于它的方法参数的类型 例如 void Pr
  • AES 加密和密钥存储?

    几年前 当我第一次接触 ASP net 和 NET Framework 时 我构建了一个非常简单的在线文件存储系统 该系统使用 Rijndael 加密来存储服务器硬盘上的加密文件 并使用 HttpHandler 来解密并将这些文件发送到客户
  • 手动编辑 Excel 365 并使用图形 API 延迟读取

    我有一个 Excel 在线文档 用户可以在 Excel 365 Web 应用程序中编辑该文档 我有一个使用图形 API 读取此 Excel 文件的应用程序 我已经成功地从文件中读取数据 但是当用户更改 Excel 文件并且 Excel 表示
  • 是否可以在 Rx 中的不同线程上调用订阅者的 OnNext?

    我是 Rx 新手 我想知道是否可以将消息分派给不同的订阅者 以便它们在不同的线程上运行 IObserable 如何控制它 据我了解 简单的主题实现是在单个线程上一个接一个地调用订阅者 public class Subsciber IObse
  • PostgreSQL整数数组值使用desc字符串连接到其他表中的整数

    我有一张桌子test包含 int 数组和值的列 例如 1000 4000 6000 or 1000 or 1000 4000 called ekw 这些值与另一个表中的描述字符串匹配 tab test id name ekw 1 One 1