将 csv 文件的一些列复制到表中

2023-12-10

我有一个包含 10 列的 CSV 文件。创建包含 4 列的 PostgreSQL 表后,我想将 10 列中的一些复制到表中。

我的 CSV 表的列如下:

x1 x2 x3 x4 x5 x6 x7 x8 x9 x10

我的 PostgreSQL 表的列应该是这样的:

x2 x5 x7 x10

如果这是一项临时任务

使用输入文件中的所有列创建一个临时表

create temporary table t (x1 integer, ... , x10 text)

从文件中复制到其中:

copy t (x1, ... , x10)
from '/path/to/my_file'
with (format csv)

现在从临时表插入最终表:

insert into my_table (x2, x5, x7, x10)
select x2, x5, x7, x10
from t

并删除它:

drop table t

如果这是一个频繁的任务

Use the file_fdw扩大。作为超级用户:

create extension file_fdw;

create server my_csv foreign data wrapper file_fdw;

create foreign table my_csv (
    x1 integer,
    x2 text,
    x3 text
) server my_csv
options (filename '/tmp/my_csv.csv', format 'csv' )
;

向将读取该表的用户授予对该表的选择权限:

grant select on table my_csv to the_read_user;

然后,只要有必要,就可以像读取表格一样直接从 csv 文件中读取:

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

将 csv 文件的一些列复制到表中 的相关文章

随机推荐

  • AMSupportURLConnectionDelegate 类在两者中均实现

    我正在尝试在 M1 mac 上构建一个 flutter 应用程序并收到以下错误 flutter build ios release Building XXX for device ios release Automatically sign
  • 替换 pandas.datetime 列中的年份

    我有一个数据框 其中包含使用 pd to datetime 转换的日期列 当我检查数据时 我发现很少有这些日期的年份被提到为 2216 年 这应该是 2016 年 您能帮我将这些日期的年份从 2216 年更改为 2016 年吗 Date 0
  • 每次调用类中的方法时运行一个函数

    我正在尝试为类中的每个函数创建一个每次调用函数时都会调用的方法 该类是另一个类的子类 在我的具体情况下 它是list class Foo another class def init self bar self bar bar super
  • 从mysql中没有pk或id或唯一列的表中删除重复记录

    我需要从我的一个表中删除所有重复的记录 问题是没有任何 id 或唯一或键列 所以我不能做这样的事情 delete from tbl using tbl tbl t2 where tbl locationID t2 locationID an
  • 不显示 asp 错误

    我已将 sql 数据库从一台服务器移动到新服务器 分离 附加 现在我遇到一些奇怪的行为 因为它不起作用但没有显示错误 这是代码
  • Python:并行运行嵌套循环、2D 移动窗口

    我处理地形数据 对于一个特定问题 我用 Python 编写了一个函数 它使用特定大小的移动窗口来快速浏览矩阵 高程网格 然后我必须对此窗口执行分析 并将窗口中心的单元格设置为结果值 我的最终输出是一个与原始矩阵大小相同的矩阵 该矩阵已根据我
  • 脚本在 Google 电子表格中导入本地 CSV

    如何从本地硬盘导入我拥有的 Google 电子表格文档中的 CSV 文件 我想通过脚本复制文件 gt 导入命令 这类似于 DocList 的错误答案 但您可以直接从 blob 中获取数据 解析它 然后将其导入电子表格 而不是使用 DocsL
  • 循环 AsyncTask 类必须声明为抽象或实现抽象方法

    我试图循环遍历表中的一些记录 并为每个记录使用一个值作为参数 获取一个网页来解析一些html 获取一些 JSON 数据进行解析并从中获取几个值 它们本身都可以完美工作 但我无法让它们都在 AsyncTask 中工作 我这里有代码 我知道我可
  • Android RatingBar:getProgressDrawable 未转换为正确的类

    我在用 Android RatingBar更改星星颜色 这行代码 LayerDrawable stars LayerDrawable rating bar getProgressDrawable 在我的 Nexus 4 模拟器 API v2
  • 响应式设计 css dom 元素操作

    我有 div 字段 包括输入元素和标签元素 两者都是显示 块 div class cf full div
  • 选择链接或复选框以显示类别标记

    我有点坚持试图告诉 Javascript 做我想要它做的事情 我有一个示例地图http calwestculture com sgs backup example map html我的左侧 spry 菜单中有类别 我希望这些类别是可点击的
  • 如何按键值对具有 stdClass 对象的多维数组进行排序? [复制]

    这个问题在这里已经有答案了 是的 我已经搜索并尝试了很多技术 但似乎没有任何效果 这是我的数组 Array 0 gt stdClass Object id gt 119 name gt Business3 start date gt 133
  • 第一个句号之后的参数的自动完成/下拉框

    例如 如果我在 Excel 托管的 VBA 中编写参数 ActiveSheet UsedRange Select Halfway through writing the first part ActiveSheet CTRL SPACE w
  • 打字稿中的管道(|)是什么意思?

    在浏览一些打字稿代码时 ng bootstrap我找到了管道 操作员 export declare const NGB PRECOMPILE typeof NgbAlert typeof NgbTooltipWindow 管道有什么用 打字
  • iOS6 中的 AudioToolBox 泄露?

    当我使用 AudioToolBox 播放音乐时 内存泄漏严重 AVAudioPlayer newMusicPlayer AVAudioPlayer alloc initWithData data error error 我用这个代码来播放音
  • 读取文本文件并在 MSBuild 中分割每一行

    我在 MSBuild 中遇到了以下问题 我有一个文本文件 buildsolutions1 txt 其中包含列表 逐行 其中包含我需要构建的所有解决方案以及以逗号分隔的相关开发人员电子邮件 常见 Common sln am email com
  • VS 代码自动更正

    我正在寻找一种方法来自动替换 VS Code 中经常拼写错误的单词 有没有什么东西 我将如何创建一些东西 我可以添加要查找的特定字符串 要替换的字符串以及要激活的自动更正的语法 文件类型 Example 背景 背景 CSS SCSS 更少
  • 购物车错误(LaravelShoppingcart)

    我在用Crinsane LaravelShoppingcart使用 Laravel 5 当我尝试将商品添加到购物车时 它将显示错误 非静态方法 Gloudemans Shoppingcart Cart add 不应静态调用 假设 this
  • 仅在 chrome 上使用 corsheaders 的 Missing Patch 方法

    我有一个正在使用的 Django 应用程序corsheaders包及其在 settings py 中如下所示 INSTALLED APPS corsheaders MIDDLEWARE on top corsheaders middlewa
  • 将 csv 文件的一些列复制到表中

    我有一个包含 10 列的 CSV 文件 创建包含 4 列的 PostgreSQL 表后 我想将 10 列中的一些复制到表中 我的 CSV 表的列如下 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 我的 PostgreSQL