在 Postgres 中将数组转换为行

2024-04-25

如果我在 SQL 语句中有类似的内容('A','B','C'),如何将其转换为具有多行的列,如下所示

col
---
 A
 B
 C

我无法更改该字符串的创建方式(因为它是从外部程序注入到 SQL 查询中的)。例如,我不能将其作为['A','B','C'](用方括号替换)。我可以把任何东西包裹在它周围,就像[('A','B','C')]管他呢。

有什么帮助吗?

UPDATE 1

我有 PostgreSQL 8.4.20


你可以创建一个ARRAY from VALUES然后解除它的嵌套:

SELECT 
    unnest(ARRAY[col_a, col_b, col_c]) 
FROM 
    (VALUES('A','B','C')) AS x(col_a, col_b, col_c)

Result:

| unnest |
|--------|
|      A |
|      B |
|      C |

编辑:你也可以调整jspcal 的回答 https://stackoverflow.com/a/50476342/4860123通过使用美元引号 ($$) 像这样,您可以将字符串连接到 SQL 语句中:

  SELECT * FROM regexp_split_to_table(
    regexp_replace(
      $$('A','B','C','D','foo')$$,
      '^\(''|''\)+', '', 'g'),
      ''','''
    );
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Postgres 中将数组转换为行 的相关文章

  • java.sql.Timestamp 到微秒精度的字符串

    我正在将时间戳列从数据库读取到 java sql Timestamp 对象中 然后我想将时间戳的值转换为 String 对象 但保持微秒精度 调用 toString 方法让我接近 但它似乎在微秒内丢失了尾随零 如果时间戳以非零数字结尾 则一
  • 如何将 MySQL 数据库更改为 UTC?

    我使用的是 Windows 7 对数据库方面的东西有点陌生 我尝试在 Google 上搜索如何将系统时区更改为 UTC 但文档有些高级 我不太确定如何更改此字段 在 my ini 文件的 mysqld 部分下 添加以下行 default t
  • 将两行中相似的列数据合并到一行中

    我的查询结果具有以下特征 LIDCode Total Domain Region VSE Version AB02 15 GLOBAL CANLA 0 6943 AB02 5925 CENTRE STREET SW 31 GLOBAL CA
  • PostgreSQL 性能 - SELECT 与存储函数

    我正在尝试在 PostgreSQL 上创建一个存储函数来提高性能并存储大查询 并且只需在我的代码中调用该函数即可 例如 如果我有一个函数 CREATE OR REPLACE FUNCTION test max integer RETURNS
  • Oracle 中的 SQL 调优 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 是否有任何文章 链接可以让我找到 SQL 调优 Oracle 的示例 如果能用例子来解释那就太好了 我需
  • sql查询将两列与一列连接起来

    我在 MS Access 2010 中有 2 个表 如下所示 USERS u id u name LOAN l id l from ref users u id l to ref users u id l amount Users u id
  • 如何在 sqlalchemy 中创建基于文字的查询?

    我创建了一个函数来创建表达式 def test operator1 operation operator2 return literal column operator1 op operation operator2 现在当我用 test
  • 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
  • SQLite HAVING 比较错误

    我有一个测试 SQLite 表 用于存储带有值的报告数据 CREATE TABLE IF NOT EXISTS test fact daily revenue date TEXT revenue NUMERIC product TEXT I
  • 如何在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
  • PHP 绑定“bigint”数据类型(MySQLi 准备好的语句)

    studentId 57004542323382 companyOfferId 7 sql INSERT INTO studentPlacement companyOfferId studentId VALUES if stmt db gt
  • 防止 PostgreSQL 中专有名词的词干?

    以其热情将词干标记转化为词位 http www postgresql org docs current interactive textsearch intro html PostgreSQL全文搜索引擎也减少了专有名词 例如 essais
  • 查找 PostgreSQL 中所有范围集合的所有交集

    我正在寻找一种有效的方法来查找时间戳范围集之间的所有交集 它需要与 PostgreSQL 9 2 配合使用 假设这些范围代表一个人可以见面的时间 每个人都可以有一个或多个空闲时间范围 我想找到all可以召开会议的时间段 即所有人都有空的时间
  • 如何在 SQL Server 中使用 nvarchar 变量为 unicode 用户添加前缀“N”?

    如何在 SQL Server 中使用 nvarchar 变量为 unicode 用户添加前缀 N 例如 给定这个变量 declare Query1 nvarchar max 我可以这样分配它 set Query1 N 但是如果我想使用怎么办
  • Mysql 检索所有有限制的行

    我想检索特定用户的所有行 限制为 0 x 所以我只是想问是否有任何方法可以检索 mysql 中的所有行 而不调用返回 x 的 count id 的方法 而不重载现有函数 该函数在查询中根本没有限制 与我们的 string Relace 功能
  • 如何在 Visual Studio 中更改 Azure 数据库表的列顺序

    我整个下午都在寻找在 MS Visual Studio 2022 中重新排序 Azure 数据库表列的方法 没有运气 在其他应用程序中 可以通过拖动或剪切和粘贴轻松重新排列列 这里无能为力 此时 我什至不确定可以在 VS 中移动列 我只对
  • Oracle:使用SQL或PL/SQL查找动态SQL中的错误位置

    如何在 PL SQL 或 SQL 中找到动态 SQL 语句中的错误位置 从 SQL Plus 中 我看到了错误的位置 例如 无效的 SQL DML 语句 SYS orcl gt SELECT 2 X 3 FROM 4 TABLEX 5 TA
  • 如何使用 typeorm 在 postgres 中保存 json 对象数组

    我正在尝试在 postgres 中保存 jsonb 类型的对象数组 Entity Column type jsonb array true nullable true testJson object 我在邮递员中发送的json testJs
  • 当所有维度值都具有 100% 重要性时处理多对多维度

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

随机推荐

  • Scala 相当于 Java 的 static 块吗?

    Scala 相当于 Java 的 static 块吗 伴生对象的构造函数 即主体 中的代码是not与 Java 类的静态初始化块中的代码完全相同 在下面的示例中 我创建了 A 的实例 但未进行初始化 scala gt object Test
  • Laravel 对包含多个项目的集合求和

    我有一个模型SettlementEntries与子表有关系return this gt hasMany App Online entry id 当尝试获取一个条目时 我可以对我的集合进行求和 如下例所示 item SettlementEnt
  • Android 地图 API,异常

    我正在使用谷歌地图 v2 我的代码在方法上被破解 public void onConnected Bundle bundle mLastLocation LocationServices FusedLocationApi getLastLo
  • 将文件上传到 S3 的 upload() 和 putObject() 之间的区别?

    在aws sdk中S3类 有什么区别upload http docs aws amazon com AWSJavaScriptSDK latest AWS S3 html upload property and putObject http
  • 使 CSS url() 相对于文档

    当涉及 CSS 时 适用以下规则 Partial URLs are interpreted relative to the source of the style sheet not relative to the document 但这是
  • 使用 javascript 比较日期[重复]

    这个问题在这里已经有答案了 我在 JavaScript 中有两个日期 var first 2012 11 21 var second 2012 11 03 我想做 if first gt second 在没有外部库的情况下 最好的方法是什么
  • 无法在 Eclipse 4.2 上安装 Aptana 插件

    我已经安装了 Eclipse 4 2 Juno 现在我想安装 aptana 来开发 ruby 但出现以下错误 无法读取存储库http download aptana com studio3 plugin install content ja
  • 获取 `TypeError: jest.fn 不是一个函数`

    我正在尝试使用 Jest 创建以下单元测试 jest dontMock pointsAwardingActions js describe points awarding actions gt describe award points g
  • 获取个人资料的 Facebook 创建日期[重复]

    这个问题在这里已经有答案了 是否可以通过使用 Graph API 获取 Facebook 个人资料的创建日期 时间 我需要它来建立一个身份验证机制 该机制不允许刚刚创建的 Facebook 用户 调用 Facebook API 是一个 相对
  • 找不到主要出口来加载“XYZComponent”

    我在 Net MVC 组件中加载了 ng2 代码 但控制台中显示以下错误 异常 未捕获 承诺 错误 找不到加载 UsersComponent 的主要出口 错误 找不到加载 UsersComponent 的主要出口 知道可能是什么问题吗 我正
  • Ruby On Rails 更新 Heroku 动态路由

    我有一个使用应用程序范围的 slugs 的应用程序 使用懒惰的宝石 https github com RISCfuture slugalicious与 Sluggable 表 并使用以下代码路由到这些 slugs Slugs begin S
  • 在 Fluent nHibernate 中使用派生类

    我有两个共享公共字段的表 我不想重新映射所有这些 而是 希望拥有一个具有公共字段的基类 对于 POCO 来说这很简单 class Base public string commonField get set class Derived Ba
  • 如何在 C# 中读取文本文件并将数据添加到 int 数组中?

    我正在尝试读取一个文本文件 其中包含以逗号分隔的数字 当我阅读时使用File Readline 我把它拿到string 我需要将其转换为 int 数组 但它给出了错误 文本文件的内容 146429 143689 144380 141523
  • 将 unicode 对象转换为带有实体的拉丁字符串

    我有一个 unicode 对象 例如 x u a 日本語 en i hall le 并希望将其转换为带有 h tml entities 的 latin 1 字符串 例如 a amp 26085 26412 35486 en 269 i ha
  • C/C++ stdlib 命名约定的名称?

    我想知道 C C 标准库中使用的命名约定是否有一个名称 或者至少有一个可以查找规则的备忘单 例如 push back underscore used setstate but not used here string npos when t
  • 没有 id 或名称的 Spring bean

    我正在审查一些 Spring 代码 并且看到一些没有 id 或名称的 bean def 做这件事的人不在场 无法询问 该应用程序运行良好 我不知道这必然意味着什么 有人知道这是否有什么特别的含义吗 某些 Bean 不需要由上下文文件中的其他
  • Spring SAML 扩展和 Spring Security CSRF 保护冲突

    我们有一个带有 Spring Security 3 2 4 的 Spring MVC 4 0 5 应用程序 其中包括运行良好的 CSRF 保护 我们现在添加 SAML 安全扩展 spring security saml2 core 1 0
  • 如何在 JSTL 中设置 cookie

    我正在尝试实现以下目标 但不确定是否可能以及语法应该是什么
  • Python:运行所有子目录中的脚本

    我是Python新手 我正在用它来做一些数据分析 我的问题如下 我有一个包含许多子目录的目录 每个子目录都包含大量数据文件 我已经编写了一个 Python 脚本 当在这些子目录之一中执行时 该脚本会执行数据分析并将其写入输出文件 该脚本包含
  • 在 Postgres 中将数组转换为行

    如果我在 SQL 语句中有类似的内容 A B C 如何将其转换为具有多行的列 如下所示 col A B C 我无法更改该字符串的创建方式 因为它是从外部程序注入到 SQL 查询中的 例如 我不能将其作为 A B C 用方括号替换 我可以把任