如何将 Postgres 中两个数组的值插入表中?

2024-01-13

假设,我有一张桌子:

create table mytable (
    "x" text,
    "y" text
);

我有一些数组,其值为x并为y called arr_x and arr_y:

["x1", "x2", "x3"]
["y1", "y2", "y3"]

我想通过一个查询插入这些值。期望的结果是:

x  | y
-------
x1 | y1
x2 | y2
x3 | y3

我尝试做类似的事情,但失败了:

insert into mytable ("x", "y")
    select unnest(arr_x::text), unnest(arr_y::text);

知道如何插入这些值吗?我是 Postgres 的新手。


你的演员阵容错误,你无法取消嵌套text.

Try

INSERT INTO mytable (x, y)
  SELECT
    unnest('{x1, x2, x3}' :: TEXT []),
    unnest('{y1, y2, y3}' :: TEXT []);

请注意,如果两个数组的长度不同,这种形式的选择行为会很奇怪。

postgres 9.4+ 中的 unnest 函数允许您扩展多个数组,每个输出列使用一个数组:

INSERT INTO mytable
  SELECT *
  FROM unnest('{x1, x2, x3}' :: TEXT [], '{y1, y2, y3, y4}' :: TEXT [])
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 Postgres 中两个数组的值插入表中? 的相关文章

随机推荐

  • 使用 WooCommerce 中的电子邮件 ID 定位特定电子邮件通知

    我在 WooCommerce 中设置了自定义状态和自定义电子邮件 我想使用当前的电子邮件 WC Email 而不是电子邮件模板内变量的当前状态 我需要在电子邮件模板中添加一些 if 语句 我没有使用订单状态来确保如果手动重新发送来自订单的电
  • 为什么我的内核模块中出现“不适合设备的 ioctl”错误?

    设备错误的 ioctl 不适当 嘿 我在尝试构建内核模块时遇到问题 它是一个名为message slot 的字符设备模块 根据说明 它应该最多支持 256 个未成年人 所有专业相同 235 个 每个次要代表一个不同的设备文件 最多可以有 2
  • 等待 su 中的命令完成

    我正在运行一个suAndroid 中的进程本身运行 screencap 实用程序 system bin screencap 每次用户摇晃手机时 我想等待每个屏幕截图完成 然后再允许用户通过摇动手机拍摄另一个屏幕截图 然而 使用process
  • 如何使用 ffmpeg 应用多个过滤器和输入

    我不仅有多个过滤器 而且有多个要覆盖的输入 我通常需要 2 3 个步骤来完成它们 并且想知道如何用一个命令完成所有这一切 因为这应该是最有效的方法 1和2字面意思相同 为了便于阅读 我删除了非常长且复杂的实际过滤器 图像向左滑到视频上 取1
  • 获取 char 输入并将其存储在数组中

    我想获取 n 个输入并将其保存在数组 c 和 p 中 然后使用它们 我目前已经写了这个 但我没有得到想要的输出 include
  • sympy 中的复数:解析欧拉恒等式

    我正在使用 sympy python 3 中的复杂函数 但无法让 sympy 简化方程 特别是我无法使用欧拉恒等式将复指数分解为实部和虚部 这是我的代码 import sympy as sym from sympy import I ini
  • 查询数据表字段包含列表中任何项目的行

    我是 LINQ 的新手 我想查询描述列字符串 示例值 我今天感觉很幸运 包含 匹配 a 中的任何项目的所有行List
  • S3 存储桶操作不适用于任何资源

    我正在按照以下指示进行操作这个答案 https stackoverflow com a 23102551 773263生成以下 S3 存储桶策略 Id Policy1495981680273 Version 2012 10 17 State
  • 如何使用 com.android.camera.action.CROP 设置输出图像

    我有裁剪图像的代码 如下所示 public void doCrop Intent intent new Intent com android camera action CROP intent setType image List
  • 如何为python3.4.2安装pysqlite

    i use kali linux and i need sqlite3 driver for python3 4 2 i tried the pysqlite install but get an erorr pls help me how
  • JS SDK 与 PHP SDK

    从我对各个网站的简要探索来看 JS SDK 似乎比 PHP SDK 更常用 即使是用 PHP 实现的网站也使用 JS SDK PHP 参考页面有 776 个赞 而 JS 参考页面有 20k 个赞 PHP 参考页面说 PHP SDK 可以帮助
  • 任何 redis 调用的 ioredis send 命令的默认超时是多少

    我将 ioredis 与节点应用程序一起使用 由于集群中的一些问题 我开始得到 集群重定向过多 最后一个错误 错误 连接已关闭 由于这个原因 我的所有 redis 调用都失败了 并且经过了很长一段时间 从 1 秒到 130 秒 ioredi
  • “精化”的反义词是什么

    在世界上通用编程的概念细化很常见 特别是给定一个概念C1 那么我们说一个概念C2提炼C1如果它提供了所有功能C1甚至可能更多 怎么称呼逆关系呢 因此 如果C2是一个细化C1 then C1是一个什么C2 语言学中有两个术语定义了本主题中讨论
  • 如何在 BigQuery UDF 主体内声明变量?

    我试图在 BigQuery 上创建一个带有 while 循环的 UDF 函数 但我在文档中没有看到任何专门解决这种情况的语法指南 也没有解决 UDF 正文中变量的声明 上下文 我正在尝试构建一个函数来将标题大小写应用于字符串 I tried
  • 将 dplyr tbl 列提取为向量

    是否有一种更简洁的方法可以从具有数据库后端的 tbl 中获取 dplyr tbl 的一列作为向量 即数据框 表不能直接成为子集 require dplyr db lt src sqlite tempfile create TRUE iris
  • 如何在Python中删除重复的短语?

    假设我有一个字符串 例如 I hate some kinds of duplicate This string has a duplicate phrase duplicate phrase 我想删除第二次出现的duplicate phra
  • 更改日历项目的前景色

    我正在 WPF 中自定义日历控件 并且可以调整背景颜色 标题前景色等 但我找不到如何编辑 1 31 天日历项目的外观 在 截屏 正如您所看到的 这些数字都是深灰色的 几乎不可读 我还想去掉鼠标悬停时的蓝色覆盖层 Code
  • 图层列表忽略标签

    我想创建一个自定义单选按钮 我使用与
  • 如何通过Windows命令行关闭TCP和UDP端口

    有人知道如何通过 Windows 命令行关闭单个连接的 TCP 或 UDP 套接字吗 谷歌了一下 我看到有人问同样的问题 但答案看起来像是 netstat 或 netsh 命令的手册页 重点关注如何监视端口 我不需要有关如何监控它们的答案
  • 如何将 Postgres 中两个数组的值插入表中?

    假设 我有一张桌子 create table mytable x text y text 我有一些数组 其值为x并为y called arr x and arr y x1 x2 x3 y1 y2 y3 我想通过一个查询插入这些值 期望的结果